|
Привдите пример хорошо написанного встроенного софта |
|
|
|
Mar 23 2009, 16:47
|

инопланетянин
  
Группа: Свой
Сообщений: 236
Регистрация: 24-12-06
Из: Питер
Пользователь №: 23 832

|
Но тем не менее, смотреть хорошо написанный чужой нужно как можно больше. Частенько возникает вопрос, а так ли хорош тот код, с которого вы берете пример?.. UCOS и UC-GUI тоже имеют недочеты, но уже либо совсем незначительные, либо просто концептуальные отличия от вашего собственного стиля  (сорри за отсутствие конкретных примеров и аргументов, ибо давно с ними не работал и непомню уже, что мне там не нравилось) Еще один вывод, который я для себя сделал: Нет предела совершенства  к коду относиться на 100%.. не стоит тупо передерать чужие стили, не поняв, "а удобно ли вам самим так.." P.S. кому-то удобно так: xxx { xx xx } кому-то так: xxx { xx xx }
|
|
|
|
|
Mar 23 2009, 22:08
|

Гуру
     
Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287

|
Цитата(BSVi @ Mar 23 2009, 09:35)  Хотелось бы посмотрить на исходники действительно качественно написанного софта (в особенности на C и для встроенных применений). Может у вас бывало такое - читаешь прогу и понимаешь - да, это очень хорошо написанно. Хочется поучится на чужом хорошем примере. Видите ли, сначала придётся определить критерий. Что значит качественно написанный? Тем более для встроенных применений. Есть, к примеру, софт, написанный наглядно, хорошо оформленный, удобный для обучения, переносимости, но не всегда оптимальный по размеру, скорости выполнения, надёжности...
|
|
|
|
|
Mar 23 2009, 22:18
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Для этого надо знать откуда стили берутся. А берутся они как я все больше понимаю от среды программирования. Даже не от индивидуализма разработчика. Именно IDE разработчика виновата в том как много он пишет комментов, как расставляет отступы и скобки, как именует и как работает с макросами. Новичка от профи как раз отличить очень сложно, поскольку корпоративные стандарты и обычная практика тащить куски друг у друга сильно нивелируют различия. Поэтому хорошо написанный исходник - это исходник раскрывающий всю мощу IDE в которой он писался. Цитата(Legotron @ Mar 23 2009, 18:47)  Но тем не менее, смотреть хорошо написанный чужой нужно как можно больше. Частенько возникает вопрос, а так ли хорош тот код, с которого вы берете пример?.. UCOS и UC-GUI тоже имеют недочеты, но уже либо совсем незначительные, либо просто концептуальные отличия от вашего собственного стиля  (сорри за отсутствие конкретных примеров и аргументов, ибо давно с ними не работал и непомню уже, что мне там не нравилось) Еще один вывод, который я для себя сделал: Нет предела совершенства  к коду относиться на 100%.. не стоит тупо передерать чужие стили, не поняв, "а удобно ли вам самим так.." P.S. кому-то удобно так: xxx { xx xx } кому-то так: xxx { xx xx }  Такие критерии (скорость, размер, надежность) хороши для кусочков размером с пару экранов. Такие и исходниками то назвать уже трудно по современным меркам. А серьезные встроенны приложения как на uCLinux, eCOS, VxWorks уже по размеру, скорости, надежности никто не оценивает. Там это просто не реально сравнить. А остается только для оценки тот самый стиль который как бы и есть косвенный показатель качества. Цитата(Herz @ Mar 24 2009, 00:08)  Видите ли, сначала придётся определить критерий. Что значит качественно написанный? Тем более для встроенных применений. Есть, к примеру, софт, написанный наглядно, хорошо оформленный, удобный для обучения, переносимости, но не всегда оптимальный по размеру, скорости выполнения, надёжности...
|
|
|
|
|
Mar 23 2009, 22:20
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
Цитата Поэтому хорошо написанный исходник - это исходник раскрывающий всю мощу IDE в которой он писался. Хорошо написанному исходнику глубоко по барабану в каком IDE он писался. Хорошо написанный исходник имеет всего два качества. 1. Оно работает. 2. Через год вы относительно легко вспоминаете за каким чертом тут всего понаписано.
--------------------
On the road again (Canned Heat)
|
|
|
|
|
Mar 24 2009, 07:43
|
Частый гость
 
Группа: Свой
Сообщений: 76
Регистрация: 18-12-07
Из: Киев
Пользователь №: 33 391

|
Цитата(DpInRock @ Mar 24 2009, 00:20)  Хорошо написанному исходнику глубоко по барабану в каком IDE он писался.
Хорошо написанный исходник имеет всего два качества. 1. Оно работает. 2. Через год вы относительно легко вспоминаете за каким чертом тут всего понаписано. Вот это я и имел ввиду. Скорость и обем в современных условиях - впонятия вторичные. Надежность - когда нужна, когда нет. Я лично убежден, что читать чужой код нужно - на своих ошибках учитсья дорого.
--------------------
|
|
|
|
|
Mar 24 2009, 08:02
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Э нет, исходник безразличный к IDE будет ужасен и отвратителен, потому что будет просто набит под завязку изощренными макросами и инструкциями условной компиляции. Такое часто можно видеть в опенсорсах. Именно потому и тяжело их портировать, что без серьезной чистки там даже спецализированные броузеры исходников не понимают. Понимать алгоритм исходников программистом не так актуально как возможность свободно его броузить. Многие вещи в исходниках вообще не надо знать как работают, например алгоритмы сжатия, кодирования в протоколах, внутренние структуры фаловых систем и GUI. Но их все равно надо отлаживать и для этого они должны быть прозрачны для IDE в которой ведется отладка и для парсера этой IDE. А работать ни один исходник не будет никогда. Официально признается что каждый килобайт кода в среднем содержит одну ошибку.  Цитата(DpInRock @ Mar 24 2009, 00:20)  Хорошо написанному исходнику глубоко по барабану в каком IDE он писался.
Хорошо написанный исходник имеет всего два качества. 1. Оно работает. 2. Через год вы относительно легко вспоминаете за каким чертом тут всего понаписано.
|
|
|
|
|
Mar 24 2009, 09:33
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата Хотелось бы посмотрить на исходники действительно качественно написанного софта Один из лично мне понравившихся стилей написания (не как скобочки форматировать, а различные моменты, связанные с обеспечением кроссплатформенности, например) можно посмотреть тут - http://www.ijg.org/files/jpegsrc.v6b.tar.gzА вообще, тут больше дело вкуса. Мне, например, нравится арбуз, а сосед - свинной хрящик уважает. Так что рекомендую писать так, чтобы сами потом могли разобраться. Мифические "люди, которые придут после меня" могут идти лесом - за то, что они будут ковыряться в Вашем коде, деньги будут получать они, а не Вы, посему Вашего интереса в обеспечении читаемости исходников "для посторонних" нет. Кроме, конечно, отдельных случаев. Но тогда должен быть отдельный тариф
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Mar 24 2009, 09:34
|
Местный
  
Группа: Свой
Сообщений: 466
Регистрация: 21-06-05
Пользователь №: 6 205

|
Если есть желание посмотреть как пишут другие люди, я бы порекомендовал почитать эту книгу http://www.rsdn.ru/res/book/prog/codeanalysis.xmlЛично мене она показалась достаточно интересной, почти все рассматриваемые примеры написаны на Си. Цитата Вы не найдете хороших программ для МК, написанных на Си, потому что их просто нет. А как отличить хорошую программу от плохой ? Плохая будет кусаться и ругаться матом ?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|