Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Region C# хорошо или плохо?

2003  1 2 3 4 5 6 7 8 все
Программист коренной житель18.07.19 22:12
18.07.19 22:12 
в ответ AlexNek 18.07.19 21:50

Если есть описывающие порядок функций правила, то руки надо оторвать тому, кто расположил их неправильно :)


А вообще это дичь какая-то :)

Программист коренной житель18.07.19 22:18
NEW 18.07.19 22:18 
в ответ AlexNek 18.07.19 21:55, Последний раз изменено 18.07.19 22:28 (Программист)
Так у вас водопад и маленькая команда?

У нас не водопад, но таки маленькая команда. И шеф, который пытается понять как работает код. Он дает добро на мердж только в 2-х случаях:

1) когда понял изменение (должно быть изменено не больше 50-100 строк, если больше, то он подвисает очень надолго :))

2) когда клиенты пинают его шефа и его шеф вставляет звиздюлей. В этом случае понимания кода не требуется, а пару раз мерджели даже без тестирования (при этом код был готов месяца 2-3 до мерджа) :D


Вот буквально только что я замерджил изменение, которое было завершено на бранче в начале июня. При этом я точно знаю, что в некоторых местах там есть проблемы. Забавно, что один из системных тестов красный (на самом деле это из-за того, что ошибка была всегда в мастере, а я ее пофиксил. т.е. это тот редкий случай, когда надо править ожидание теста) из-за этого не срабатывают юнит-тесты, т.е. по большому счету у нас нет доказательств того, что все ОК. Более того, я завтра последний день перед отпуском, и на фирме остается шеф, который не понял изменения, и джуниор разработчик, который тоже не до конца понял изменения. И все это добро планируют установить на боевой системе во время моего отпуска :) А все из-за того, что шефу таки настучали по голове и потребовали срочно решить проблему. Вот так и живем :)

Murr патриот19.07.19 10:03
Murr
NEW 19.07.19 10:03 
в ответ AlexNek 18.07.19 21:53

ставь дома визуал студию

-----

Так есть ее... даже две... точнее - было - мащинка сдохла - БП.

А вот времени на это уже нет...

Murr патриот19.07.19 10:14
Murr
NEW 19.07.19 10:14 
в ответ AlexNek 18.07.19 21:57

где то в стайл гайде мелкософта

------

Читать гайды от мелкомягих? Мне хватает кода написанного в точном соответствии с примерами мелкомягких - если на описано, а у меня не описано, что и как делается - фиг разберешся без поллитры что там...


Текучка:

грузится табличка из базы. Табличка в базе - может быть отредактирована в любой момент.

на основании полученных данных - строится набор ДатаКолумнов и добавляется в другую табличку

по этой другой табличке строится третья - с удалением и добавлением полей

все это написано именно в стиле примеров мелкомягких:


Private Function createReport(ByVal startDateTime As String, ByVal finishDateTime As String) As DataSet
Dim DS As New DataSet
Dim DTOptimisations As DataTable = Nothing
Dim DTReplacements As DataTable = Nothing
Dim DTPieces As DataTable = Nothing
Dim DTNUM_KREIS As DataTable = Nothing
Dim DTLIPROD_USER As DataTable = Nothing
'Dim DTDisplay As DataTable = Nothing
Dim DTSummary As DataTable = Nothing
Try
DTOptimisations = DXCR8.loadDTOptimisations(startDateTime, finishDateTime)
DTReplacements = DXCR8.loadDTReplacements(startDateTime, finishDateTime)

DTOptimisations.Merge(DTReplacements)

If DTOptimisations.Rows.Count > 0 Then

DTNUM_KREIS = DXCR8.loadDTNUM_KREIS
DTNUM_KREIS = loadDTNUM_KREIS_abbreviateDepartment(DTNUM_KREIS)
DTLIPROD_USER = DXCR8.loadDTLIPROD_USER

DTOptimisations = addColumnsDTOptimisations(DTOptimisations, DTNUM_KREIS)
DTOptimisations = DTOptimisations.Select("", "batchNo, glassNo").CopyToDataTable

For Each DROptimisation As DataRow In DTOptimisations.Rows

If DROptimisation.Item("batchNo").ToString = "3041312" Then
DROptimisation.Item("batchNo") = 3041312
End If

If DROptimisation.Item("seqNo").ToString = "-3" Then
DTPieces = DXCR8.loadDTPiecesDummy("800001", DROptimisation)
Else
DTPieces = DXCR8.loadDTPieces(DROptimisation)
End If

If DTPieces.Rows.Count > 0 Then

DTPieces = DTPieces_setDepartment(DTNUM_KREIS, DTPieces)
DTPieces = DTPieces_setDepartment_exceptions(DTNUM_KREIS, DTLIPROD_USER, DTPieces)
DTPieces = DTPieces_setDepartment_replacements(DTNUM_KREIS, DTLIPROD_USER, DTPieces)

DROptimisation = fillDROptimisation(DTPieces, DTNUM_KREIS, DROptimisation)

End If
Next
DTOptimisations = fillDTOptimisation_combinedGlassNames(DTOptimisations)
DTOptimisations.Columns.Remove("sheetWidth")
DTOptimisations.Columns.Remove("sheetHeight")
DTOptimisations.Columns.Remove("seqNo")
DTOptimisations.Columns.Remove("timestampIndex")


DTSummary = loadDTSummary(DTOptimisations)

Me.ViewState.Item("DTOptimisations") = DTOptimisations
Me.ViewState.Item("DTSummary") = DTSummary
PNL1AddGV("GVDisplay", "Stock Sheet Usage", DTOptimisations)
PNL1AddGV("GVSummary", "Stock Sheet Summary", DTSummary)
End If



Catch ex As Exception

End Try
Return DS
End Function




Найдешь, с плутыка, где и как менается структура двух таблиц?

Вопрос второй - нахрена пустой DS возвращать? смущ

Murr патриот19.07.19 10:16
Murr
NEW 19.07.19 10:16 
в ответ Программист 18.07.19 22:18

Вот так и живем :)

------

Достаточно типичная картина...

AlexNek патриот19.07.19 22:52
AlexNek
NEW 19.07.19 22:52 
в ответ Murr 19.07.19 10:03
А вот времени на это уже нет...

ну в этом случае я пас смущ

AlexNek патриот19.07.19 22:57
AlexNek
NEW 19.07.19 22:57 
в ответ Murr 19.07.19 10:14
на основании полученных данных - строится набор ДатаКолумнов и добавляется в другую табличку

уже после этого не хочется читать дальше. Ладно еще можно понять когда что то с базы читается. Не люблю я как то DataTablе.

1 2 3 4 5 6 7 8 все