metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-08-21 05:55 am

Зло какое-то

Школьный Линукс и входной порог разработки

Борландовские Паскали, С и тому подобное работали под досом без плясок с бубном и ставились простым копированием.
Дельфи в 1997 году поставилась на 95 винду и заработала сразу. За день можно написать прототип DB приложения, вообще видя среду разработки в первый раз. Visual C в то же примерно время - то же самое, разве что писать чуть сложнее, это вам не RAD.
Вижуал студия с дотнетом в 2006 вроде бы году - аналогично, поставил, за день разобрался.

А в линуксе до сих пор какое-то вуду, стоит только выйти за рамки стандартных задач.

[identity profile] theiced.livejournal.com 2010-08-21 11:41 am (UTC)(link)
ну и при рефактринге - перегенериццо тем же хоткеем. ребе, уёбищность вашей иде не повод гробить своё время отладчиком. (скандируя) емакс! емакс! емакс"

[identity profile] metaclass.livejournal.com 2010-08-21 11:47 am (UTC)(link)
Я бы предпочел метапрограмминг - чтобы макрос доставал описание функции, где он сидит и генерил лог автоматом :)

[identity profile] theiced.livejournal.com 2010-08-21 12:00 pm (UTC)(link)
увы, в стандарте си нету даже __FUNCTION__ (в гцц таки есть, но не о нём) не говоря уже о сигнатуре. что вы хотите от ассемблера.

[identity profile] fi_mihej.livejournal.com 2010-08-21 06:01 pm (UTC)(link)
Ну имя-не имя, а номер строки выдавать автоматом - может: __LINE__. Большего, для вычисления функции, и не надо (ну да - хотелось бы имя, но рас уж возможности нету нету, то и это пойдетъ).

[identity profile] theiced.livejournal.com 2010-08-21 06:04 pm (UTC)(link)
этого мало, поэтому приходится писать вот такую вот порнуху как я показал.

[identity profile] fi_mihej.livejournal.com 2010-08-21 06:28 pm (UTC)(link)
Ту "порнуху", которую ты показал приходится писать для более сложных и глобальных вещей, а для того, что бы узнать имя текущей функции (т.е. без учета вложенности вызовов) без необходимости прописывания этого имени текстовой строкой, и как следствие, без необходимости изменять эту строку при рефакторинге кода - достаточно знать номер строки. При этом, естественно, необходимо знать, какой конкретно билд выполняется, поскольку строка с одним и тем же номером, но в разных версиях - может принадлежать различным ф-циям. То бишь это не идеальное решение, но как вариант - вполне себе рабочее. Кроме того: что я написал - это не замена той "порнухе", которую ты описал, а только один из приемов, который при желании, может быть использован _внутри_ других подобных "порно".

Доступно пояснил, или еще пожевать?

[identity profile] fi_mihej.livejournal.com 2010-08-21 06:38 pm (UTC)(link)
Плюс я похоже таки заманался, поскольку вместо "описание функции" - прочел "имя функции" (у metaclass). Так что извиняюсь - я просто не в ту степь отвечал. :(

[identity profile] theiced.livejournal.com 2010-08-21 06:48 pm (UTC)(link)
ага, с именем функи то всё просто - мы же используем нормальные компиляторы в которых есть __FUNCTION__, да. тут беда с сигнатурой. и таки ничего страшного - все заебались :)