Форум: "Прочее";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];
ВнизКак повысить скорость программирования? Найти похожие ветки
← →
cyborg (2008-07-10 23:40) [0]Мастера, поделитесь приемами, которые вы используете чтобы повысить скорость программирования и качество программ.
← →
antonn © (2008-07-10 23:41) [1]юзаю VCL
← →
wl © (2008-07-10 23:44) [2]слепой десятипальцевый метод...
← →
Zeqfreed © (2008-07-10 23:47) [3]Ctrl+C / Ctrl+V
← →
Rouse_ © (2008-07-10 23:47) [4]тебе нужен секрет скорости программирования или качества программы?
← →
oxffff © (2008-07-10 23:54) [5]
> cyborg (10.07.08 23:40)
Работать, работать, работать и еще раз работать.
← →
AFHU (2008-07-10 23:55) [6]> Как повысить скорость программирования?
Не очень оригинальный ответ, но может быть нужно использовать Castalia? )
← →
cyborg (2008-07-10 23:58) [7][1] , [2], [3] - уже использую
> тебе нужен секрет скорости программирования или качества
> программы?
Меня интересует как увеличить скорость программирования не ухудшив или даже улучшив качество.
← →
Zeqfreed © (2008-07-10 23:59) [8]> cyborg (10.07.08 23:58) [7]
Отказаться от [3].
← →
cyborg (2008-07-11 00:00) [9]
> Работать, работать, работать и еще раз работать.
Можно грузчиком работать, но хорошим программистом при этом не стать :)
> AFHU (10.07.08 23:55) [6]
Спасибо. Скачал, сейчас посмотрю что это.
← →
Anatoly Podgoretsky © (2008-07-11 00:21) [10]> cyborg (10.07.2008 23:58:07) [7]
Тогда тебе поможет только совет про 10 пальцев, но качество в любом случае пострадает.
Если же хочешь повысить качество, то пользуйся один пальцем, пока набиваешь код успеешь и подумать и передумать, а если код будешь набивать карандашем, зажатым в зубах, то успеешь передумать и о программирование вообще.
← →
cyborg (2008-07-11 00:35) [11]
> AFHU (10.07.08 23:55) [6]
Посмотрел, прикольная штука.
> Anatoly Podgoretsky © (11.07.08 00:21) [10]
Афигеть. Я то думал кто-нибудь расскажет о том как лучше организовывать классы, какие паттерны использовать или что-нибудь в этом духе. Мда... я ошибался.
← →
Ega23 © (2008-07-11 00:38) [12]Сначала карандаш и бумашко. Потом - набивка кода. Когда понятно, что делать, я, бывает, за день под 1000 строк кода фигарю (откомпилированных, без хинтов и варнингов). Когда непонятно - могу 2 дня вообще ни строчки не выдать. Всё карандашом на бумашко.
← →
Anatoly Podgoretsky © (2008-07-11 00:39) [13]> cyborg (11.07.2008 0:35:11) [11]
Это относится ко второй части.
Но твой вопрос не имеет отчета, поскольку ответ - выберите одно из двух.
← →
AFHU (2008-07-11 00:47) [14]> Спасибо. Скачал, сейчас посмотрю что это.
%-) Я обычно сначала смотрю, а уже потом скачиваю или выкидываю ссылку
> Посмотрел, прикольная штука.
Реально что-ли скачал? Я сам-то про неё только сегодня узнал от wl). Стоит хоть её скачивать-то? Глюков никаких? Ограничения какие?
А по сабжу я бы сказал вот что:
Копировать/вставлять - это конечно всё равно придётся делать, как вы ни крутитесь. Но было бы что копировать. Поэтому весь творческий путь программиста - это постоянное пополнение собственной библиотеки процедур и функций. Ещё в 80-е и 90-е об этом говорилось в каждой книжке. Сейчас как-то умалчивают, как мне кажется.
Любые "интересные" процедуры и функции, даже часто специфические, лучше выносить в собственный юнит. Например, начать хотя бы с допотопных функций определения путей к системным папках и проч. Уже через месяц активной разработки ПО окажется, что такие функции часто нужны, а писать их заново или искать в предыдущих проектах долго и сложно. А тут подрубаем юнит, за пару секунд (при наличии хороших комментариев и "стуктуры") находим функцию (или вообще по памяти вспоминаем) и всё. Если юнит сильно разрастётся, или там будет много функций различного направления, можно создать ещё один и тд. Мне это реально помогает.
Также интересная вещь - использование готовых примеров и заготовок :) Ну вот мне пока на ум приходит только DelphiWorld, правда там для меня мало что интересного. Когда нужно встроить в пограмму какую-то возможность, то берём код оттуда и нагло копипастим в свой проект. Но это уже на любителя, всё делается на свой страх и риск, никто не гарантирует также скопировать чужие ошибки и баги.
Ну вроде вот и все "секреты"
← →
cyborg (2008-07-11 00:47) [15]
> Ega23 © (11.07.08 00:38) [12]
Под программированием я понимаю и проектирование и набивку кода.
> Anatoly Podgoretsky © (11.07.08 00:39) [13]
Не правда. Допустим пишется код не использующий процедур - получается и долго и не качественно. Соответственно, используя быстрее и качественнее.
← →
Ega23 © (2008-07-11 00:59) [16]
> Под программированием я понимаю и проектирование и набивку
> кода.
Не знаю, как у кого, говорю за себя.
\Есть задача. Её думаю. Думаю, на самом деле постоянно. По дороге домой, дома, по дороге на работу, на работе. Что-то рисую, что-то от руки пишу. когда приходит четкое понимание проблемы - сажусь кодировать. Именно при кодировании - здорово Ctrl+Shift+C помогает.
← →
cyborg (2008-07-11 01:00) [17]
> Реально что-ли скачал? Я сам-то про неё только сегодня узнал
> от wl). Стоит хоть её скачивать-то? Глюков никаких? Ограничения
> какие?
Да, скачал. Для D7 весит всего три с половиной метра. Не знаю стоит или не стоит скачивать, надо потестить хотябы недельку. Глюков пока не заметил. Ограничения: внизу формы появилась надпись Trial verion. Остальсь 30 дней, и кнопка "Купить сейчас". Порадовало выделение begin - end"ов :)
← →
cyborg (2008-07-11 01:06) [18]
> Ega23 © (11.07.08 00:59) [16]
Не понял, что должно произойти при нажатии Ctrl+Shift+C?
← →
Eraser © (2008-07-11 01:15) [19]> Как повысить скорость программирования?
судя по [18], для начала выучить делфевские хоткеи ;-)
← →
AFHU (2008-07-11 01:21) [20]> судя по [18], для начала выучить делфевские хоткеи ;-)
Может всё-таки имелось в виду Ctrl+Shift+J?
Ctrl+Shift+C я в своей практике не использовал, понятия не имею что это за зверь :)
← →
Ega23 © (2008-07-11 01:22) [21]
> Не понял, что должно произойти при нажатии Ctrl+Shift+C?
Понятно...
Создаёшь новый проект, создаёшь в нём новый юнит, пишешь следующий код:unit Unit1;
implementation
type
TMyClass = class (TMyObject
public
constructor Create;
destructor Destroy; override;
function Func1(const Param1 : Integer) : Boolean;
property Prop1 : string read FProp1 write FProp1;
property Prop2 : Integer read GetFProp2 write SetFProp2;
end;
Потом встаёшь курсором на любую строчку в объявлении типа и жмёшь данное сочетание клавишь.
Вуаля.
← →
Ega23 © (2008-07-11 01:24) [22]
> Может всё-таки имелось в виду Ctrl+Shift+J?
Имелось ввиду именно то, что имелось ввиду.
> Ctrl+Shift+C я в своей практике не использовал, понятия
> не имею что это за зверь :)
Может имеет смысл сначала попробовать, что это за зверь, а уже потом интересоваться, что имелось ввиду?
← →
AFHU (2008-07-11 01:26) [23]> Ctrl+Shift+C я в своей практике не использовал
Нагло вру, было дело, только очень давно :(
← →
Украинец (2008-07-11 02:11) [24]
> cyborg (10.07.08 23:40)
>
> Мастера, поделитесь приемами, которые вы используете чтобы
> повысить скорость программирования и качество программ.
Пытаться проектировать ДО, а не ПОСЛЕ. Я стараюсь всегда так делать, где это возможно по срокам.
← →
kaif © (2008-07-11 02:41) [25]Может быть имеет смысл изучить такую тему, как паттерны проектирования.
Я сам только что обратил на них внимание и мне показалось, что это очень интересная тема. Ногами прошу не бить.
Если кто может лаконично и вдохновляюще пролить свет на них в данной ветке, я думаю, что это могло бы оказаться очень уместным. Похоже, что они могут реально поднять качество работы программиста.
Вот то, что я просматривал сегодня:
http://www.rsdn.ru/summary/864.xml
← →
wl © (2008-07-11 03:21) [26]ну а за что бить то? вполне полезный и эффективный инструмент.
многие программисты, не зная об их существовании, неосознанно ими пользуются, в очередной раз изобретая велосипед. Их просто формализовали из накопленного опыта и обозвали, чтобы каждый по названию мог понять о чем идёт речь.
правда это не панацея, иногда они даже вредят, если их неумело применить (так написано в книжках по design patterns)
← →
Украинец (2008-07-11 03:48) [27]
> kaif © (11.07.08 02:41) [25]
Здесь лучше описано
http://www.citforum.ru/SE/project/pattern/
← →
cyborg (2008-07-11 09:46) [28]Спасибо за ссылки. Почитаю.
← →
clickmaker © (2008-07-11 09:58) [29]> чтобы повысить скорость программирования
нужно представлять, что нужно сделать. Тогда скорость сама собой развивается
← →
Дуб © (2008-07-11 09:59) [30]
> чтобы повысить скорость программирования
Программа Соло - наше фсе!
← →
int64 (2008-07-11 10:15) [31]
> Мастера, поделитесь приемами, которые вы используете чтобы
> повысить скорость программирования и качество программ.
http://www.modelmakertools.com/code-explorer/index.html
После освоения этого инструмента, будет какзаться, что до этого занимался мазохизмом.
← →
int64 (2008-07-11 10:21) [32]
> Украинец (11.07.08 03:48) [27]
>
> > kaif © (11.07.08 02:41) [25]
>
>
> Здесь лучше описано
> http://www.citforum.ru/SE/project/pattern/
А еще лучше:
в Д2006 - Д2007 есть такая штука, как Pattern Wizard
← →
Desdechado © (2008-07-11 11:13) [33]
> чтобы повысить скорость программирования и качество программ
Высыпаться, бывать на свежем воздухе, иногда полностью забывать о решаемых задачах.
← →
Dennis I. Komarov © (2008-07-11 11:31) [34]Нанять хорошего программиста :)
← →
Игорь Шевченко © (2008-07-11 19:15) [35]Писать меньше кода. Я серьезно
← →
GrayFace © (2008-07-12 15:47) [36]int64 (11.07.08 10:15) [31]
http://www.modelmakertools.com/code-explorer/index.html
После освоения этого инструмента, будет какзаться, что до этого занимался мазохизмом.
Когда я узнал о Ctrl+Shift+C, c большим облегчением с ним распрощался. (о Ctrl+Shift+Up/Down я узнал еще раньше) Хотя в редких случаях, типа Ctrl+C/Ctrl+V из класса в класс, полезен.
← →
Alkid (2008-07-12 15:48) [37]
> Мастера, поделитесь приемами, которые вы используете чтобы
> повысить скорость программирования и качество программ.
Использовать языки более высокого уровня :)
← →
turbouser © (2008-07-12 16:09) [38]
> Desdechado © (11.07.08 11:13) [33]
Это в идеале. А на самом деле?
> Игорь Шевченко © (11.07.08 19:15) [35]
Интересно... Это как? Меньше чем требуется? Меньше чем мог бы?
Хреновый какой-то совет. Совсем не в тему...
← →
Kostafey © (2008-07-12 16:15) [39]Секретного ингридиента не существует. Все дело в тебе (с) Кунг-Фу Панда
:)
← →
VirEx © (2008-07-12 18:45) [40]
> Как повысить скорость программирования?
сесть на ежа
задолжать
разделить программирование на проектирование и само забивание кода
и т.п.
← →
TeamLeader (2008-07-12 19:00) [41]
> Использовать языки более высокого уровня :)
Это какие? Сейчас использую С#.
← →
turbouser © (2008-07-12 19:19) [42]
> TeamLeader (12.07.08 19:00) [41]
>
>
> > Использовать языки более высокого уровня :)
>
>
> Это какие? Сейчас использую С#.
Ужос какой!! Брось эту хрень
← →
Правильный$Вася (2008-07-12 22:41) [43]
> > Использовать языки более высокого уровня :)
> Это какие? Сейчас использую С#.
русский народный
← →
Johnmen © (2008-07-13 00:17) [44]
> Как повысить скорость программирования?
Почему то подумалось - как сделать длиннее?
Хирургически? Мистически?
А главный вопрос - есть, что удлиннять то? Нет? Чего ж тогда беспокоитесь?
← →
Renegat (2008-07-13 00:35) [45]> Как повысить скорость программирования?
Использовать язык, где нужно меньше всего писАть.
Например, ASM. Сам пишу и всем рекомендую! %)
А ещё лучше - Brainfuck. Там воще один опкод = один символ. Только у него несколько ограниченные возможности...
← →
ketmar © (2008-07-13 00:50) [46]>[45] Renegat (2008-07-13 00:35:00)
>Только у него несколько ограниченные возможности…
врёшь ты всё. он turing complete → возможности не меньше, чем у любого другого языка.
---
Do what thou wilt shall be the whole of the Law.
← →
Renegat (2008-07-13 00:54) [47]> [46] ketmar © (13.07.08 00:50)
Хм... попробуй написать на нём код обработки произвольного прерывания =)
← →
Zeqfreed © (2008-07-13 01:06) [48]> Renegat (13.07.08 00:54) [47]
Пишешь интерпретатор на C в двадцать строк и вперед.
← →
Renegat (2008-07-13 01:10) [49]> [48] Zeqfreed © (13.07.08 01:06)
А это уже не будет классический Брейнфак! В классическом есть только < > + - . , и [ ... ] ! А это уже будет читерство.
← →
Zeqfreed © (2008-07-13 01:12) [50]> Renegat (13.07.08 01:10) [49]
Угу, а если ты используешь компилятор для Си, то это уже не классический Си. Правильно я понимаю?
← →
Renegat (2008-07-13 01:18) [51]> Правильно я понимаю?
Нет. Если добавлять в синтаксис Фака новый опкод (скажем, ¶ - обработать прерывание, номер которого в предыдущей ячейке, парамы - в ещё более предыдущих) - то он станет не классическим. А если обходиться стандартным факовским набором команд - то вперёд с песнЯми. Пишем интерпретатор и обрабатываем!
← →
Renegat (2008-07-13 01:21) [52]> в предыдущей ячейке
* в текущей, извиняюсь.
Я это вообще к чему. Несмотря на то, что теоретически Фак может делать то что умеют остальные ЯП, на практике это не всегда так.
← →
Zeqfreed © (2008-07-13 01:35) [53]> Renegat (13.07.08 01:18) [51]
А что мне может помешать записать в ячейку опкод команды для обработки прерывания и вызвать его?
← →
Renegat (2008-07-13 01:46) [54]> [53] Zeqfreed © (13.07.08 01:35)
Ручаюсь, что EIP нельзя с помощью стандартных команд Фака установить на какую бы то ни было ячейку данных из 30000 номинально доступных проге.
← →
Zeqfreed © (2008-07-13 01:56) [55]> Renegat (13.07.08 01:46) [54]
Это проблема не языка, а компилятора/интерпретатора. Возможность такая есть. Новых инструкций никто не добавляет, все довольны вроде.
← →
Renegat (2008-07-13 02:05) [56]> [55] Zeqfreed © (13.07.08 01:56)
Э, нет! Тогда будет нарушена "философия" языка! Ибо речено святыми:В «классическом» Brainfuck, описанном Урбаном Мюллером, размер ячейки — один байт, количество ячеек 30000. В начальном состоянии указатель находится в крайней левой позиции, а все ячейки заполнены нулями.
т.е. машина не может выходить за границы этого диапазона (иначе ошибка), а раз при старте всё забито нулями, то кода сопстно проги там быть не могёт, и следовательно, EIP на эту область указывать тоже не будет.
А вообще, про принципиальную возможность - согласен. Только это уже будет отступление от канонов. Как С++ по отношению к С.
← →
Zeqfreed © (2008-07-13 02:15) [57]> Renegat (13.07.08 02:05) [56]
Ладно, будем считать что буквоедство победило здравый смысл :)
Я вообще и не планировал особо спорить, я так, за Кетмара заступаюсь ;)
← →
ketmar © (2008-07-13 05:07) [58]>[56] Renegat (2008-07-13 02:05:00)
ну да, про 30 тыщ я запамятовал.
>[57] Zeqfreed © (2008-07-13 02:15:00)
>я так, за Кетмара заступаюсь ;)
зря, я тут лажанулся. %-)
---
Do what thou wilt shall be the whole of the Law.
← →
iZEN (2008-07-16 07:42) [59]
> cyborg (10.07.08 23:40)
>
> Мастера, поделитесь приемами, которые вы используете чтобы
> повысить скорость программирования и качество программ.
Нужно уметь думать и размышлять.
← →
brother © (2008-07-16 07:44) [60]> скорость программирования
имхо формулировка не точна... различаем, скорость набора кода, сроки выполнения ТЗ...
← →
Anatoly Podgoretsky © (2008-07-16 09:39) [61]> iZEN (16.07.2008 7:42:59) [59]
> Нужно уметь думать и размышлять.
Если думать и размышлять, то скорость повысить не удастся.
← →
Правильный$Вася (2008-07-16 11:26) [62]
> Нужно уметь думать и размышлять.
а с запятой выглядело бы практичнее ;)
← →
Украинец (2008-07-16 15:14) [63]
> iZEN (16.07.08 07:42) [59]
>
>
> > cyborg (10.07.08 23:40)
> >
> > Мастера, поделитесь приемами, которые вы используете чтобы
> > повысить скорость программирования и качество программ.
>
> Нужно уметь думать и размышлять.
Есть три пути самосовершенствования: размышление — самый благородный, подражание — самый простой, и путь опыта — самый трудный (с) Сенека
Самый простой - использование паттернов, хуже будет только в самых редких случаях.
← →
blackman © (2008-07-16 16:18) [64]Самый простой путь использовать ранее сделанные программы.
Конечно, если их достаточно много. Можно это и паттернами назвать :-)
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];
Память: 0.62 MB
Время: 0.005 c