can3p: (Default)
Сегодня задумался о том, что хорошо бы, чтобы в pidign появилась поддержка протокола Mail.ru Agent. Столько прекрасных людей пользуются только этим ужасным мессенджером! Ужас. Сейчас мне такая задача не по зубам, но буду двигаться в этом направлении. Даже интересно, если что-то получится. Мой скилл в си растет не по дням, а по часам, так что расплата близка! =]
can3p: (Default)
Прославляю разработчиков отладочных утилит под linux! Уж вот кого коснулось божественное откровение!

Пишу программу, лезут баги. Язык си - он отличный и дружественный, но как и linux тщательно отбирает друзей. Не следишь за своими манерами, сразу засираешь память там, где не надо, и программа валится в кору. От логических ошибог отлично спасает дебаггер gdb, а вернее графическая морда к нему - Nemiver. Морда делает свое дело хорошо - содержимое переменных видно, программу можно прокрутить по шагам и отследить все действия. Но нетривиальные ошибки работы с памятью с ее помощью не поймешь.

Сижу, пишу программу, использую zlib. И раз - валится при сжатии памяти. Валится, и все! Дебаггер показывает, что все работает, все нормально, но валится. И быть бы моему горю безграничным, если бы не очередной релиз среды разработки Gnome/gtk+ приложений Anjuta. Читаю список изменений, обращает на себя строчка:
* Fixed lots of memory leaks (thanks valgrind)

Гугление дало ссылку на сайт - http://valgrind.org/
Принцип программы следующий: она запукскается в качестве супервизора и отслеживает все запросы программы на выделение памяти и все ее попытки эту память изменить. В случае недопустимых действий это все документируется и выводится в консоль. В моем случае valgrind указал на внешне безобидную строчку с memcpy, в которой и закралась ошибка. Исправил все за секунды, перед этим дебажил целый вечер. Обожаю этих людей!
can3p: (Default)
Гномеры сделали новый финт ушами - Vala Цель проекта состоит в том, чтобы создать язык высокого уровня, который облегчит разработку gtk и gnome приложений, но при этом будет по полной использовать функционал Gobject. Компилятор сначала транслирует код Vala в код на Си(по отзывам нормального даже качества), а потом уже все это дело компилируется. Но основная прелесть Vala оказалась в том, что синтаксис языка максимально похож на C#!

Конечно, есть проект Mono, есть привязки для C# на моно к Gtk, но все это является дополнительными костылями, которые жрут дополнительное место и к тому же зависят от доброй воли Microsoft. Проект активно развивается, так что в скором стоит ожидать целого моря написанного на нем софта. Сам подумываю заняться этим делом, купить мануальчик по c#. Заодно забурюсь куда-нибудь работать быдло-C#-кодером.
can3p: (Default)
Освежил в памяти часть мануала для php, касающуюся классов в php5, после этого стало понятно, что в объектно-ориентированном стиле я недалеко ушёл от возможностей четвёртой версии. Но что был еще интереснее, так это то, что для части фич из php 5 я не смог придумать вразумительного применения относительно моих текущих скриптов. Как просплюсь, начну раскрывать вопрос.

Profile

can3p: (Default)
can3p

April 2017

S M T W T F S
      1
2 3 45678
9101112131415
16171819202122
23 242526272829
30      

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 24th, 2017 06:37 am
Powered by Dreamwidth Studios