«Ruby on Rails в дії»
Автори: Брюс А. Тейт і Курт Ніббс
Кількість сторінок: +200
Рік видання: 2008
От кілька днів тому придбав дану книгу. Це вже третя книга по Rails переведена на російську мову. І цей факт не може не радувати, тому що це свідчить про одне - платформа стає все популярніше і популярніше.
А тепер перші враження про книгу. Ну по-перше дуже багатьох хто не любить багато букаф порадує об'єм - це трохи більше ніж 200 сторінок. І це зовсім не свідчить про безкорисності або неповній розкритості тематики. Навпаки дана книга може виявитися дуже корисної для дуже швидкого старту програмування з використанням Rails. І невеликий об'єм свідчить про простоту платформи.
Протягом всієї книги розглядається приклад створення фотоальбому з можливістю розділяти фото по категоріях і створення слайдшоу. Розкривається вся магія й можливості реалізації шаблона Active Record у середовищі Rails.Приділяється деяка увага технології AJAX, скафолдінгу й тестуванню(у рамках Rails).
Корочє хто має бажання вивчить ROR – маст рід.
- Location:Кривий Ріг
- Mood:
confused
Автори: Е. Хант та Д. Томас.
Ця книжка являе собою невеликий збірник порад програмісту від досить досвідчених людей, якими і є автори книги. У ній немає якихось тонкощів програмування на тій чи інщій мові. Є лише поради до покращєння як особистої так і командної роботи.
Вона складається із восьми невеликих глав у кожній із яких висвітлюється певна тема. Мені так здалося що кожну главу можна читати незалежно від інших, хоча інколи трапляються посилання як і в попередні так і в наступні глави. Після кожної теми іде декілька питань для мііркування або обговорення у колективі та декілька практичних завдань( в кінці книжки звісно є відповіді від авторів ).
Особисто мені особливо сподобалися метафоричні повчальні історіі аворів - "Суп из камней и сварившиеся лягушки","Мой исходный текст съел кот Мурзик",..., і тд.
Короче книжечку варто прочитать.
- Location:Жовті Води
- Music:повна тиша

| Perl ,Python, Ruby Job Trends | Perl jobs - Python jobs - Ruby jobs |

| Perl ,Python, Ruby Job Trends | Perl jobs - Python jobs - Ruby jobs |
А тепер із іншою групою мов. А саме С, С++, Java та C#
Так само як із попередніми кількісна залежність.
І тенденція до зростання( або звичайно зменьшення ) популярності.
Ну самі робіть висновки. Я особисто сильно здивувався високій популярності мови С та особливо до тенденціі зростання популярності цієї мови. Ruby взагалі поза конкуренцією!
- Location:Жовті Води
Те шо пишуть про це на одном із сайтів можна почитать натиснувши ( тут )
А тепер моє ІМХО. Очікував чогось набагато кращого. Фільм гавно. Шутки ніякі. Все побудовано на герої Гаріка Харламова. Навіть до кінця хв 20 не додивився...
Але всежтаки зважаючи на те шо прихильників Comedy Club, Наша Раша та таке інше дуже багато, то мабуть основну місію щодо великого прибудку він всеж таки виконає.
- Location:Жовті Води
- Music:Eilera - Fusion
- Location:Жовті Води
- Music:Tenacious D - Kickapoo
А займатися цим зараз зовсім немає часу та і нерви витрачати на робітників жеку теж не дуже хоцца, треба їх берегти для сесії.
Ото тепер і сиджу без гарячої води:(
- Location:Жовті Води
- Mood:
angry - Music:Naked City - Val de Travers
- Location:Жовті Води
- Mood:
optimistic - Music:Epica - Insomnia
Причиною такого рішення стало - цікавість, нова платформа ( від гугл !!!), велика популярність цієї мови, розширення свого резюме:)...
Ну поперше - і хто каже шо Java на С++ дуже схожа і навпаки... ІМХО ніфіга подобного.... вони майже кардинально різні...
Від деяких моментів я був дуже сильно приємно шокований - інтерфейси, все у купі( немає звичних хідерів та сорсів), відсутність вказівників і багато іншого.
Та щей багато позитиву приніс Eclipse - стільки можливостей та щей зовсім безкоштовно - капець просто... але один недолік - підтормажує трішечки.
Мабуть треба шось починать писать на цій мові... бо без практики це марне гаяння часу.
Короче я в захопленні.
- Location:Жовті Води
- Mood:
optimistic - Music:Epica - Angel Of Death
Осибливо запамятався рефакторинг - заміна процедурного коду обєктним...Приклад приводився дуже простий - тому все ы одразу було зрозуміло... алеж ІМХО це капецько складно таке зробить, мабуть навіть у більшості випадків неможливо.
Ще у тих самих останніх главах говориться про системи автоматизаціі рефакторинга, які допомагають проводить дещо із меншою кількістю ризиків. Ну шо можу сказать - класно але не безплатно:(.
А ще є глава, остання, яку написав Кент Бек. Одразу переносися у його книжки по екстремальному програмуванню. Кожне слово сповідує ХР :)
Короче ще раз рекомендую усим!
- Location:Жовті Води
- Mood:depressed
- Music:JT Bruce - Hypnic Jerk
Та несінитниця це повна, не вірте нікому хто таке каже...і мабуть треба не лише визнати що це несінітниця, але й задуматися над професійністю цієї людини у галузі сучасного програмування.
Якщо вам дійсно хочеться марно гаяти час, то будь-ласка.
А зараз хотілося б привести приклад який доводить моє переконання - що це заняття є зовсім даремним, а механіз зовсім не універсальним. Не будемо навіть і брати до уваги багатопоточні системи, логічні, функціональні, оо мови програмування бо тут одразу все зрозуміло! Візьмем простий приклад із практики двох, як багато хто вважає, дуже близьких мов програмування - С та С++. Ось вам приклад:
1) На мові проррамування С - файл шось.с
typedef enum
{
kArrayIndexesFirst = 0x00,
kArrayIndexesSecond = 0x01,
}ArrayIndexes;
char GetElement( ArrayIndexes wIndex )
{
const static char s_cArray[] = "12";
return s_cArray[wIndex];
}
2) На мові програмування С++ - файл шось.сpp
typedef enum
{
kArrayIndexesFirst = 0x00,
kArrayIndexesSecond = 0x01,
}ArrayIndexes;
char GetElement( ArrayIndexes wIndex )
{
const static char s_cArray[] = "12";
return s_cArray[wIndex];
}
Прикольно те шо неозброїним оком видно шо код однаковий( якщо не вірете порівняйте ВінДіфом;-) ). Але функцію написану на С можна юзать ось так:
void main( void )
{
printf("%c\n", GetElement( kArrayIndexesFirst ) );
printf("%c\n", GetElement( 10 ) );
}
А ось те саме написане на С++ так навіть компілюватися не буде.
Вивід: Блоксхеми різні - у першому випадку перевірки немає і все може впасти у будь-який час, а у другому перевірка існує на етапі компіляції. Тому я можу буть впевненим - що блоксхеми це нікому не потрібний, зовсім не універсальний привіт гаяти свій час!!!
- Location:Жовті Води
- Mood:
happy - Music:повна тиша
Ну так сказать - перше враження така сопі програмулінка. Але с першого разу тупанув, і сказав їй шариться по всьому компутеру у пошуках фото( або навіть зображень ). І тут воно мені понаходило:). Короче ... Ледве знайшов як це все почистить.
Ну потім навчений гірким досвідом, я вже таки вказав правильну директорію із фотами. Ось навіть трошки для проби вирішив викласти. Такі собі спогади про літо... ах не буду...
Кому цікаво дивіться тут
- Location:Жовті Води
- Mood:
lonely - Music:Vanessa Mae - Jamais
Спонукало мене до прочитання цієї літератури прагнення до нових знань та так би мовити вдосконалення вже набутих попередньо( ги аж самому смішно....фраза нагадує щось стандартне із пояснювальноє записки із курсової роботи). Ще мабуть дуже-дуже вплинуло прочитання літератури по екстремальному програмуванню, складовою частиною якого є постійний рефакторинг коду. Тому вирішив більш детально ознайомитися із усіма методами, які допомагають нам програмістам уникнути написання "коду із душком".
Ну всім мабуть відомо що рефакторинг являє собою процес зміни існуючої програмноє системи, при якому не змінюється зовнішня її поведінка, але значно покращюється внутрішня структура( а саме із внутрішньою структурою коду нам повсягденно і доводиться працювати).
Подолавши на сьогоднішній день трошки більше половини книжечки, ловлю себе на тій думці що багато із цих методів почав застосовувати у житті. Мабуть самий розповсяджуваний метод( принаймні у моємо досвіді ) є "Extract Method "( "Виділення методу" ). Можливо це томущо він може застосовуватися не лише у обєктно-оріентованих програмах і запобігає злу із усіх зол - дублюванню коду. Також почав хронічно уникати довгих за розміром функцій ( навіть праве око починає трошки тіпати коли бачиш функцію на декілька пейдж даунів... спробуйте у таких знайти помилку ) та великої кількості передаваємих параметрів. Кажучи коротко - код стає кращім( хоча це є доволі субєктивним і може буть розкритиковано...але я готов сприймати та брати до уваги конструктивну критику).
Самим складним із усього прочитаного є набуття вміння правильно та у потрібний час застосовувати той чи інший рефакторинг. А вони на стільки не однозначні. Навіть наведу простенький приклад - "Exnract Class" та "Inline Class". Ці два рефакторинги є абсолютно протилежні. І дуже сильно залежить від ситуаціє коли їх треба застосовувать. Але це вміння набувається із досвідом!
Ще головним моментом є обовязкова наявність тестування. Без тестування рефакторинг може буть безнадійним і призвести до того що ваша програме зовсім перестане працювать, і ви нічого не зможити із цим боробити. У цьому нам можуть стати у пригоді бібліотеки - CUnit, CppUnit, JUnit( можливо колись далі зверну вашу увагу на одну із цих бібліотек)... так далі, все залежить від мови програмування яку використовуєте.
А на сьогодні мабуть досить. Тема мабуть не закрита і буде продовженна коли здолаю цю прекрасну книжечку;)
- Location:Жовті Води
- Mood:creative
- Music:Tomahawk - Sweet Smell Of Success
P.S. Шось ніяк не звикну регулярно писать пости до ЖЖ.
- Location:Жовті Води
- Music:повна тиша
| Какой Ваш реальный возраст и сколько Вы проживете? (Триникси) |
![]() |
| Ваш реальный возраст 19 лет/года Вы проживете еще 49 лет/года Пройти тест! |
- Music:Annihilator - My Precious Lunatic Asylum


