четвер, 28 липня 2016 р.

6 інструментів для того щоб бути ефективним Web-розробником

За останні декілька років Rails допоміг Ruby досягти великої популярності. Одна з основних причин – це час, котрий Rails може зекономити вам. Працюючи в добре влаштованому фреймворку, багато з рішень, які розроблюються, спрощуються, і стає простіше бути більш організованим. Додайте такі чудові інструменти як ORM, модульне тестування, імітація (заглушки) і т.д. і ви отримаєте потужну установку для ефективної і якісної розробки.

Завжди були і напевно будуть сперечання на предмет кращої платформи, але я хочу вам показати, що більшість з цих аргументів в основному не відповідають дійсності. В залежності від того, яку платформу для розробки ви вибрали, в будь-якій з них доступні практично однакові інструменти, в тому або іншому вигляді. В будь-якому випадку, для мене, загальними компонентами, які допомагають писати якісний код, швидше і простіше в обслуговуванні, являються: хороший IDE, легке у використанні модульне тестування та імітація, ORM, MVC фрейморк і хороша бібліотека JavaScript.
Я працюю .Net розробником на постійній основі і PHP розробником час від часу. Мені подобаються обидва середовища по декільком причинам. Я розкажу про кожний з цих компонентів детальніше і поясню, чому я вважаю їх важливими. Потім, в кінці статті, я запропоную списки кожного з цих компонентів для різних мов (.Net, Java, PHP, Python и Ruby). Я вирішив перерахувати тільки безкоштовні або open source інструменти, тому що їх легко випробувати і всі ми не проти зекономити пару баксів.

Інтегроване середовище розробки (IDE)
На мій погляд, це найбільш суттєве. Звичайно, ви можете писати код в блокноті та компілювати за допомогою командного рядка, але це напевно буде довше і вимагатиме більше дисципліни, щоб залишатися організованим. Хороший IDE дозволяє простіше керувати проектом (всі файли згруповані з можливістю табульованого перегляду), підсвічувати синтаксис, компілювати (якщо це може бути застосовано), а також автокомпліти.
ІDE стають все більш витонченим і дозволяє за допомогою плагінів розширювати функціональність, наприклад, svn та управління git в IDE.
Моя улюблена IDE — це Visual Studio. Існують і інші хороші програми, як NetBeans та Eclipse, але по якійсь причині я віддав перевагу Visual Studio.

Модульне тестування та заглушки
Ці два пункти ідуть пліч-о-пліч. Програма не може вважатися закінченою без відповідного тестування. У багатьох людей виникають суперечки, коли справа доходить до тестування. Я теж ставився до цього доволі скептично. Мені здавалось дивним – витрачати час на написання коду для тестування реального коду, над яким я працював. В результаті, я вирішив спробувати і змінив свій стиль програмування. Коли концентруєшся на тому, як зробити тести на своєму коді, ти пишеш його чистіше, і це добре – мати швидкий спосіб дізнатися чи не зробила дана зміна якісь поламки або порушення.

Об’єктно-реляційне відображення (ORM)
Якщо ви колись користувались ORM, то знаєте, що воно може зекономити вам багато часу. Одним із сумнівів перед використанням ORM була продуктивність. Я боявся, що використання ORM зробить мої програми повільнішими, але я помилявся. Мені потрібно було задатись питанням, чи варта низька продуктивність великої економії часу. Відповідь на це питання – однозначно ТАК! Дуже рідко ORM стає джерелом низької продуктивності програми, а якщо і стає, то можна зробити рефакторинг для її підвищення або використовувати SQL безпосередньо, якщо в цьому буде необхідність.
Все зводиться до того, щоб не турбуватись про задачі продуктивності до того, як вони з’являться. Так, це важливо, піклуватись про продуктивність, але це не повинно вас турбувати при використанні ORM.

MVC фреймворк
MVC став дуже популярним, частково завдяки Rails, і це революція в способі виконання веб-розробки. Ключовим компонентом його популярності являється розділення різних частин вашої програми на окремі шматочки. Це розділення спрощує тестування, покращує проектування і робить ваші програми в цілому більш легкими в обслуговуванні. 

Бібліотеки JavaScript
Здається, що бібліотеки JavaScript сьогодні вже є на всі випадки життя. Пам’ятаю, ще нещодавно їх не було так багато, і JavaScript не був таким розповсюдженим. Бібліотеки JavaScript важливі для продуктивності. Вони не повинні компенсувати невисоке знання JavaScript , необхідна тверда основа, доповнена її гарним розумінням. Бібліотека дбатиме про сумісність з браузерами і операції на низькому рівні, що дозволить сконцентруватися на виконанні роботи.

ASP.Net
IDE: Visual Studio 2008 Express
Unit Testing: NUnit
Mocking: Rhino Mocks
ORM: NHibernate
MVC: ASP.NET MVC
JavaScript: jQuery

Java
IDE: NetBeans
Unit Testing: JUnit
Mocking: EasyMock
ORM: Hibernate
MVC: Struts
JavaScript: jQuery

PHP
IDE: PHPEclipse
Unit Testing: PHPUnit
Mocking: PHPMock
ORM: Propel
MVC: Symfony
JavaScript: jQuery

Python
IDE: PyDev
Unit Testing: PyUnit
Mocking: PythonMock
ORM: SQLObject
MVC: Django
JavaScript: jQuery

Ruby
IDE: RadRails
Unit Testing: Test::Unit
Mocking: Mocha
ORM: Sequel
MVC: Rails
JavaScript: jQuery

Немає коментарів:

Дописати коментар