|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|||||||||||
Оценка кода28.01.2020, 22:43. Показов 6544. Ответов 123
Метки нет (Все метки)
Здравствуйте, прошу вас всех оценить мой код , по возможности дать советы что так , а что не так и как это исправить либо в каком направлении смотреть , это моя первая попытка создать что-то не ради забавы , а чтобы использовать это в реальной жизни. Сразу скажу что еще не все доделал что хотел бы. Это декодер asn1.der , данные передаются в decode() в виде BLOB конвертированного в массив знаков.
header Кликните здесь для просмотра всего текста
cpp Кликните здесь для просмотра всего текста
0
|
|||||||||||
| 28.01.2020, 22:43 | |
|
Ответы с готовыми решениями:
123
Оценка кода
|
|
Just Do It!
|
|
| 08.02.2020, 19:06 | |
|
0
|
|
|
Just Do It!
|
||||||||||||
| 08.02.2020, 19:19 | ||||||||||||
|
но полностью аналогично по работе:
Добавлено через 4 минуты типа так:
и это здорово! (ноутест)
0
|
||||||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 08.02.2020, 19:41 [ТС] | |
|
XLAT, ещё никто не написал о асертах, о том что я не использую смартпоиньеры и тд
0
|
|
| 08.02.2020, 20:07 | |
|
0
|
|
|
Just Do It!
|
|||
| 08.02.2020, 20:09 | |||
|
все студенты поголовно не интересуются тестированием написанного ими же кода. как только у вас появится такой код, который не будет помещаться здесь на форуме, так жизнь вас сама заставит использовать ассерты и не только одних их: вы за один присест научитесь писать и юнит-тесты. ![]() и смарты могут вам ваще и не понадобятся никогда. ах, да: выучите принципы SOLID, что в 100500 раз важнее любых смартов при написание кода в 3kk строчек.
0
|
|||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|
| 08.02.2020, 23:20 | |
|
3
|
|
|
Just Do It!
|
||
| 09.02.2020, 00:04 | ||
|
- или огурец с вами? - а может огурец и вы это одно и то же??? 1. 10% 2. 10% 3. 80% hoggy, если вы не можете вовремя правильно написать деструктор, то книжки вам никак не помогут. но есть всегда одна надежда: надежда на умные понты. самое сложное в использовании смартов это подключить нужный инклуд. но это сделает вас каким то экзотическим овощем и вы не станете от этого умнее, как были огурцом, так и останетесь.
0
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 09.02.2020, 00:42 [ТС] | |
|
XLAT, мне вот интересно , что делать в случае если я создал какой-то объект в куче но до того как код дошел до момента его уничтожения сработал exception , что делать без смарт поинтеров?
0
|
|
|
Just Do It!
|
|||
| 09.02.2020, 01:10 | |||
|
ReYalp,
любитель огурцов вас же просветил в ЛС. зачем спрашиваете? ReYalp, вы хотите сказать что при exception у вас не вызовится деструктор? ![]() здорово конеш, когда в нашем лютом гуанокоде есть кому-то о нас позаботиться. с этим я согласен. Добавлено через 2 минуты
0
|
|||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 09.02.2020, 01:18 [ТС] | |
|
XLAT, причем здесь деструктор? если я создам к примеру int * a = new int(12312312) , потом вызву метод в котороый передам его и в этом методе исключение сработает и в итоге код не дойдет до момента удаления
0
|
|
|
Just Do It!
|
|
| 09.02.2020, 01:28 | |
|
ReYalp, если вы вызываетете исключение то вы должны его где-то обрабатывать.
Не так ли? Вы обрабатываете свои исключения? сорян, вопрос риторический, зачем же вызывать, если не обрабатывать. тогда напишите такой код, который обработает их правильно. зы: выше я вам передавал привет от гугла. вы перевели? вы понимате, что у них 100500 миллионоc стрококдов? ...
0
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 09.02.2020, 01:30 [ТС] | |
|
XLAT, тогда выходит что смартпоинтеры не использовать, ексепшенов тоже, что тогда использовать? Ассерты можно?
0
|
|
|
Неэпический
|
|||||||||||
| 09.02.2020, 01:42 | |||||||||||
|
XLAT, только что код
2
|
|||||||||||
|
Just Do It!
|
||||||
| 09.02.2020, 01:50 | ||||||
|
лично я придерживаюсь такого простого правила.
new и делит использовать за пределами конструктора/деструктора только на грязном то бишь низшем уровне. типа написания либы для моей приложухи. да. стремлюсь чтобы в моем коде были сплошные объекты. за это иногда приходят огурцы и меня буцают ногами, типа можно было бы написать коротко в одной функции мейн. если у нас есть огурцы и помидоры, у которых только один параметр количество, то я предпочту написать так:
блин тут мысль моя не фига не раскрыта, слишком много текста надо ...
0
|
||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 09.02.2020, 01:51 [ТС] | |
|
Хотелось бы ещё узнать мнение hoggy и DrOffset по этому поводу)
0
|
|
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
||
| 09.02.2020, 01:54 | ||
|
ReYalp, читая такие документы, как google code style, нужно всегда обращать внимание, что они не позиционируют их как догму, они не позиционируют их как наставление для других. Везде употребляется местоимение мы, наша кодовая база, наши условия. Это code style для тех условий, которые сложились в их компании. У каждой компании есть такие, свои, условия. В частности про исключения, которые они в основном не используют, у них написано следующее:
Поэтому не надо подменять понятия и считать, будто бы компания отказалась от их использования по причине безусловной "ущербности" исключений как технологии. И уж тем более не следует руководствоваться запретом на исключения в компании Google, как причиной отказа от них в своем проекте. Для вашего проекты вы должны оценивать свои условия, свои исторические и философские причины, а не причины компании Google.
4
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 09.02.2020, 02:01 [ТС] | |
|
DrOffset, а умные указатели?
0
|
|
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
|||||||
| 09.02.2020, 02:07 | |||||||
m_xseq, если во время второго в списке выделения памяти (инициализация m_yseq) будет брошено исключение?Как бы вы это пофиксили?
0
|
|||||||
|
Just Do It!
|
|
| 09.02.2020, 02:08 | |
|
Croessmah,
ок. я вот что подумал, надо придумать в своих задачах такой случай, что без эксепшенов никак. но вряд ли получится: тогда надо придумать такие задачи. скорее нужно просто так нагуанокодить, чтобы всё же появилась такая необходимость в исключениях. чертов кисс: если оно не надо, то я и не использую. а вот с эксепшенами у мя дожны появиться проблемы, которые я уже залатаю умными понтами.
0
|
|
| 09.02.2020, 02:08 | |
|
Помогаю со студенческими работами здесь
60
оценка кода Оценка стиля кода Оценка кода динамического двумерного массива
Оценка стиля написания кода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|