Информация об изменениях

Сообщение Re[10]: Гнилая компания белорусского IT рынка от 06.04.2016 12:25

Изменено 06.04.2016 12:26 Kernan

Здравствуйте, AlexGin, Вы писали:

AG>Здравствуйте, уважаемый Kernan, Вы писали:


K>>Здравствуйте, AlexGin, Вы писали:


AG>>>Если интересно — то пожалуйста:

AG>>>https://github.com/AlexGin/GSM_SMS_Send
K>>Теперь понятно почему не сложилось с геймдевом.

AG>А при чем тут это?

AG>В геймдеве, отсылки SMS не требовалось.
AG>Если можно — поясните пожалуйста, уважаемый Kernan, в чем проблема?
Честно говоря, код читабельный и не настолько плохой, но чтобы вникнуть в него надо разбираться в реализации, а не просто по интерфейсам пройтись и всё станет ясно. Более того, на мой взгляд на С++ так уже давно не пишут (хотя тут похоже С++ 98). Как я понял суть кода (кстати, почему нельзя просто скачать зип проекта со всеми солюшенами и скомпилировать?) это просто мини программа которая открывает ком порт и шлёт туда AT команду + какой-то UI.
AG>Претензии к стилю кода или к идее разбиения кода на классы, интерфейсы и т.д.?
Да, тут тоже проблема. Смешивается логика отправки, обработки, подготовки и каких-то UI-ных вещей. На это указывает, например, использвание std::string и рядышком CString.
Есть ещё штуки вроде:
char* szStr = new char[1024];
memset(szStr, 0, sizeof(char)*1024);
strcpy(szStr, strInfo);

после которого delete я не увидел. Да и вообще, забабахать тут вектор unsigned char надо и не думать.
Или такое
if (abs(iDelta) <= 60) // One minute (60 seconds)
    return true;
else
    return false;

Хотя это можно как-то на автомате нарезать и забить, сам такое делал. Есть приведение типов которые не нужны, например вида retrun (bool) (a <= b). Что-то приводится к int из других типов (подозреваю unsigned).
Опять же можно переабоать так чтобы использовать пару паттернов вроде фабрики, стратегии или команды.
Re[10]: Гнилая компания белорусского IT рынка
Здравствуйте, AlexGin, Вы писали:

AG>Здравствуйте, уважаемый Kernan, Вы писали:


K>>Здравствуйте, AlexGin, Вы писали:


AG>>>Если интересно — то пожалуйста:

AG>>>https://github.com/AlexGin/GSM_SMS_Send
K>>Теперь понятно почему не сложилось с геймдевом.

AG>А при чем тут это?

AG>В геймдеве, отсылки SMS не требовалось.
AG>Если можно — поясните пожалуйста, уважаемый Kernan, в чем проблема?
Честно говоря, код читабельный и не настолько плохой, но чтобы вникнуть в него надо разбираться в реализации, а не просто по интерфейсам пройтись и всё станет ясно. Более того, на мой взгляд на С++ так уже давно не пишут (хотя тут похоже С++ 98). Как я понял суть кода (кстати, почему нельзя просто скачать зип проекта со всеми солюшенами и скомпилировать?) это просто мини программа которая открывает ком порт и шлёт туда AT команду + какой-то UI.
AG>Претензии к стилю кода или к идее разбиения кода на классы, интерфейсы и т.д.?
Да, тут тоже проблема. Смешивается логика отправки, обработки, подготовки и каких-то UI-ных вещей. На это указывает, например, использвание std::string и рядышком CString.
Есть ещё штуки вроде:
char* szStr = new char[1024];
memset(szStr, 0, sizeof(char)*1024);
strcpy(szStr, strInfo);

после которого delete я не увидел. Да и вообще, забабахать тут вектор unsigned char надо и не думать.
Или такое
if (abs(iDelta) <= 60) // One minute (60 seconds)
    return true;
else
    return false;

Хотя это можно как-то на автомате нарезать и забить, сам такое делал. Есть приведение типов которые не нужны, например вида retrun (bool) (a <= b). Что-то приводится к int из других типов (подозреваю unsigned).
Опять же можно переабоать так чтобы использовать пару паттернов вроде фабрики, стратегии или команды.
Ну и кончено же пренебреженеи идиомой RAII почти везед. Почему это и зачем? С ней же проще жить...