Случилось так, что на работе попросили составить список из того, что нужно почитать/скачать/установить студентам, которые хотят писать на всеми любимом языке программирования C#. Решили, что раз они (студенты) этим интересуются, то вопрос "а оно нам(им) надо пропускаем.

Для начала начала необходимо установить сам .NET framework и какуе-то IDE. C IDE вариантов не много: или бесплатные express версии (http://www.microsoft.com/exPress/), или trial полнофункциональной Visual Studio (http://www.microsoft.com/visualstudio/en-us/default.mspx). Что дальше делать с триальной версией - каждый решает сам, но для студентов полно всяких програм, где можно получить всё это бессплатно и, главное, легально.

При установки Visual Studio рекомендую сразу поставить SQL Server Express Edition (http://www.microsoft.com/express/sql/default.aspx), т.к. я с трудом представляю какое более-менее большое приложение может работать без базы данных.

Из-за того, что упор делается на web-разработку, разу ставим Microsoft Web Platform Installer (http://www.microsoft.com/web/downloads/platform.aspx) - в нем уже есть всё нужное для разработки на платформе ASP.NET.

Всё установили, настроили - теперь можно писать свою первую (или не первую) программу на .NET. Вот только ещё не известно как писать! Предлагаю список литературы.

On-line сточники:

  • MSDN (Microsoft Developers Network): http://msdn.microsoft.com/en-us/default.aspx или русская версия http://msdn.microsoft.com/ru-ru/default.aspx. Там действительно есть всё, но использовать его в качестве учебника трудно и неудобно.
  • http://www.asp.net/learn/ - много разного обучающего видео, демонстрирующего возможности ASP.NET. К каждому ролику можно скачать исходный код проекта, на случай, если что-то не получается. Только не стоит увлекаться: там показывают только самые(!) простые вещи, которые в больших приложения требуют хорошей обработки напильником.
  • http://www.asp.net/community/projects/ - Starter Kits – готовые приложения с исходниками. Не знаю что ещё можно об этом сказать. Очень полезная вещь.
  • Всевозможные блоги, форумы, сообщества. Их сейчас очень много, т.ч. я не считаю что нужно их сдесть перечислять, всё-равно кому-то что-то не понравится.
  • ...
Книги:
  • Эндрю Троелсен. Язык программирования С# 2008 и платформа .NET 3.5 - своеобразный букварь по C#. Многие рекомендуют начинать именно с него.
  • Книги по ASP.NET от Дино Эспозито - у него несклько книг, ориентированных на разный уровень читателей, каждый может выбрать себе книгу "по душе".
  • Джеффри Рихтер. CLR via C#. Программирование на платформе Microsoft .NET Framework 2.0 на языке C# - отличнай книга, обязательна к прочтению каждым разработчиком, который пишет на .NET. Только я очень не(!) рекомендую начинать именно с неё. У меня было "тяжелое детство": начинал с Рихтера, поэтому пришлось читать 2 или 3 раза, чтобы понять о чём он пишет.
  • ...
Для начала, наверное хватит. To be continued...

 


Первая попытка установить PostgreSQL на MacOS X потерпела крах. Пошел читать readme:

 

Вспомнились танцы с бубном в MS Dos, чтоб тот увидел больше 640К оперативной памяти, работа с extension memory (привет Паскалю). А чего стоит знаменитая фраза одного известного всем человека, о том, что нам таки хватит 640К ОЗУ. А ностальгия скорее не о ДОСе, а о том, как раньше писал код (некоторые и сейчас так пишут): оптимизировали память так, чтоб лишнего байта не занимало. А как доставалось тогда Windows'у? Лишние лишние файлы, процессы, записи в реестре дезжалостно удалялись для прибавления 1-2 мегабайт свободной оперативной памяти и нескольких десятков мег на винте. А сейчас словил OutOfMemoryException, когда процесс IIS'а в виртуалке начал есть более одного гига... Завтра буду искать memory leaks...

 

P.S. Интересный пост в тему DOS & .NET http://www.codeproject.com/KB/cs/ExpressionCompiler86.aspx


jQuery 1.4 Alfa 1

Published 12/7/2009 by e0ne in Web Development

Несколько дней назад вышла новая версия популярного JavaScript framework'а jQuery, пока только альфа, которую сами разработчики не рекомендуют использовать в production. Официальная информация на блоге http://blog.jquery.com/2009/12/04/jquery-14-alpha-1-released, а я расскажу о своих первых впечатлениях по сравнению с последней стабильной версией 1.3.2.

Для начала сравним размеры файлов:

jquery-1.3.2.js jquery-1.3.2.min.js jquery-1.4a1.js jquery-1.4a1.min.js
117 KB 55 KB 144 KB

87 KB

Видем что размер вырос, примерно, на 30 килобайт. Много это или мало - судите сами.

Пока в целях тестирования подключил библиотеку к двум проектам, где jQuery спользуется не так активно, но, в моём случае, вся функциональнось работает как и работала, ничего не поламалось, плагины успешно работают. Сравнивать производительность с ранней считаю нецелесообразным, т.к. к релизу, а то и к следующим версиям всё может поменяться как в лучшую, так и худшую стороны.


Прошло два года...

Published 12/4/2009 by e0ne in Blog

В прошлом месяце болгу исполнилось 2 года. За это время поменялось 3 хостинга, 2 движка блога (после переезда с blogspot.com был выбран BlogEngine.NET). Сейчас свотрю всё больше в сторону WordPress, который написан на нелюбимом мной PHP, но не такой сырой, как движки на .NET или Python. Или прийдётся таки дописывать самостоятельно нужную функциональность к BlogEngine, но на это нужно время. Также изменился вид RSS-ленты: теперь в ней виден весь пост.

Немного статистики за 2 года:

Данные BlogEngine:

 

  • 73 поста;
  • 138 комментириев;
  • 52 оценки за пост.
Данные FeedBurner:
  • 85 подписчиков;
  • 41 604 просмотра;
  • 10 525 перехода на сайт с RSS-ленты.
Данные Google Analytics (статистика работала не с самого начала, а, иногда, совсем не работала):
  • 8 999 заходов на сайт из 62-х стран;
  • 24 732 просмотров страниц;
  • на сайт попадали:

 

С переездом на новую версию движка поменял тему, которую ещё надо доработать напильником, почистил коментарии от спама, заработаль email-уведомления о новых коментариях. В ближайшее время добавлю капчу, т.к. спам надоел.

Что каксается содержания блога, то ничего конкретного сказать не могу. Конечно, хочется писать больше постов, но не всегда есть такая возможность. В ближайшее время будет больше постов о Pytnon: как о IronPython, та о CPython.


Почему-то, всегда забываю синтаксис вызова script service/method. Руки так и тянуться написать:

var result = ScriptServiceExample.AsmxService.Hello;
или
var result = ScriptServiceExample.AsmxService.Hello();

И каждый раз, после написания такого когда приходится лезть в MSDN/Google чтобы понять почему же оно не работает. После прочтения документации становится понятно "как" нужно писать вызов метода, но вопрос "почему" ответ, как правило, находится не сразу. Чтобы понять почему же всё работает именно так, достаточно посмотреть JavaScript код, который генерируется службой. Посмотреть это можно зайдя по адресу http://localhost:65456/AsmxService.asmx/js и сохранив себе js-файл следующего содержания:

Type.registerNamespace('ScriptServiceExample');
ScriptServiceExample.AsmxService=function() {
ScriptServiceExample.AsmxService.initializeBase(this);
// ...
Hello:function(succeededCallback, failedCallback, userContext) {
return this._invoke(this._get_path(), 'Hello',false,{},succeededCallback,failedCallback,userContext); }}
// ...

С WFC AJAX-enabled службами всё работает также.

 

ScriptServiceExample.rar (7.44 kb)