JavaRush /Java блог /Random UA /Кава-брейк #34. 12 безкоштовних інструментів для підвищен...

Кава-брейк #34. 12 безкоштовних інструментів для підвищення якості коду та продуктивності. 4 особисті якості, які піднімуть вашу кар'єру розробника на новий рівень

Стаття з групи Random UA

12 безкоштовних інструментів для підвищення якості коду та продуктивності

Джерело: DZone Команда будь-якого проекту зацікавлена ​​у швидкій розробці та виведенні продукту на ринок у найкоротші терміни. Допомогти з розв'язуванням цієї задачі можуть open source інструменти. Наприклад, ті, за допомогою яких можна проводити статичний аналіз коду, керувати конфігурацією, збиранням та безперервною інтеграцією.Кава-брейк #34.  12 безкоштовних інструментів для підвищення якості коду та продуктивності.  4 гнучкі навички, які піднімуть вашу кар'єру розробника на новий рівень - 1Хоча більшість компаній все ще використовує у розробці додатків комерційне програмне забезпечення, популярність open source зростає з кожним роком. Софт з відкритим вихідним кодом від Apache, Red Hat, Google та SourceForge отримав визнання у низці сфер. Тому в багатьох компаніях відбувається зміна парадигми: поступова відмова від комерційних інструментів на користь інструментів з відкритим кодом. Мета цієї заміни - підвищити продуктивність та знизити загальну вартість розробки. Нижче зібрано кілька корисних open source інструментів, які дозволять вам покращити якість коду та підвищити продуктивність.

Управління життєвим циклом додатків

Tuleap - система управління проектами, життєвими циклами додатків, гнучкою розробкою та проектуванням. Tuleap – це альтернативне рішення для пропрієтарного ПЗ: CollabNet, Jira та Confluence, Crucible.

Управління конфігурацією

Subversion – система контролю версій з відкритим вихідним кодом, розроблена 2000 року компанією CollabNet. З 2010 року Subversion є одним із проектів Apache Software. Розробники використовують Subversion для підтримки поточних та попередніх версій файлів, зберігання вихідного коду, веб-сторінок та документації. Git — розподілена система керування версіями для відстеження змін у файлух та координації роботи над цими файлуми у групі розробників. Git створено Лінусом Торвальдсом у 2005 році. На базі Git зручно створювати спеціалізовані системи контролю версій або інтерфейси користувача.

Управління збиранням

Maven (для великих проектів) – фреймворк для автоматизації збирання проектів від Apache. Основна мета Maven у тому, щоб дати можливість кодеру швидко зрозуміти осмислити життєвий цикл складання. За допомогою Maven можна керувати збиранням, запитами та документацією проекту. Ant (для невеликих проектів) - Java-бібліотека та інструмент командного рядка для керування процесами, описаними у файлух збирання. Основне призначення Ant - складання Java-додатків. Ant виконує ряд вбудованих завдань з компіляції, складання, тестування та запуску Java-додатків. Також Ant може ефективно використовуватися для складання додатків іншими мовами: наприклад, C або C ++.

Якість коду

PMD — мультимовний аналізатор коду на основі статичного набору правил, що виявляє потенційні проблеми в додатку. CheckStyle — інструмент, який допомагає програмістам дотримуватись стандартів розробки коду та впровадити їх у групову розробку проектів. FindBugs – статичний аналізатор для перевірки та пошуку помилок у Java-коді. Для роботи FindBugs потрібна JRE (або JDK) 1.7.0 або нова версія. Аналіз доступний для програм, скомпільованих у будь-якій версії Java. SonarQube – платформа для перевірки якості ПЗ. Використовує різні інструменти статичного аналізу коду, такі як CheckStyle, PMD та FindBugs для вилучення метрик програмного забезпечення, які потім можна використовувати для покращення якості коду.

Модульне тестування

JUnit — середовище тестування Java з відкритим вихідним кодом, що використовується для написання і запуску автоматичних тестів, що повторюються. JUnit можна інтегрувати з Eclipse, Ant, Maven. EclEmma – інструмент для аналізу покриття коду (для Eclipse). Поширюється за відкритою ліцензією, проводить аналіз покриття коду у середовищі Eclipse. eCobertura— безкоштовний плагін Eclipse для Cobertura дозволяє створювати звіти про покриття коду Java. За допомогою eCobertura можна запускати програми або тести у режимі Cobertura прямо з Eclipse. Детальні результати покриття відображаються у деревоподібній формі. Використовуючи ці інструменти, ви зможете покращити якість ПЗ та забезпечити більшу прозорість коду для всієї команди. Відмовившись від ручних перевірок коду на користь інструментів модульного тестування та покриття, ви підвищите якість своєї роботи на 15-20% та продуктивність на 10-15%.

4 особисті якості, які піднімуть вашу кар'єру розробника на новий рівень

Джерело: Cult.honeypot Після закінчення коледжу я вирішив переїхати в інше місто, щоб влаштуватися в GE Healthcare. Це була дворічна ротаційна програма розвитку лідерських якостей, в рамках якої учасники змінювали команди в рамках ІТ-організації кожні шість місяців. Ми отримували досвід, одночасно навчаючись у чудових людей у ​​різних групах із різною спеціалізацією. Випробування та негаразди, які ми пережабо за ці два роки, дозволабо нам здобути уроки та отримати корисний досвід, заради якого ми, власне, і прийшли працювати. Кава-брейк #34.  12 безкоштовних інструментів для підвищення якості коду та продуктивності.  4 гнучкі навички, які піднімуть вашу кар'єру розробника на новий рівень - 2Коли я перейшов із програми розвитку лідерських якостей на нинішню посаду розробника, стало очевидно, що набуті навички мені стануть у нагоді і в технічній сфері. Грунтуючись на своєму досвіді, я виділив чотири гнучкі навички, які, як мені здається, повинен мати в собі кожен ефективний розробник: зосередженість, оптимізм, спілкування та чесність.

1. Зосередженість

Епоха технологій докорінно змінила наше спілкування та роботу. Ми постійно обмінюємося повідомленнями, надсилаємо листи електронною поштою та отримуємо купу різних повідомлень. Через це наша продуктивність страждає. Для вдумливої ​​та копіткої розробки програмного забезпечення потрібні час і зосередженість, тому що наш мозок має приймати важливі рішення. Щоб писати зручний у супроводі, читальний та якісний код, потрібні тимчасові та інтелектуальні ресурси. Іноді вони обмежені, оскільки програмісти повинні шукати баланс між часом та якістю. Щоб вирішити цю проблему, я, наприклад, використовую «метод помідора». Суть методу полягає в тому, щоб зосередитися на чомусь одному, не відволікаючись протягом 25 хвабон, з наступною 5-хвабонною перервою. Так ви виконуєте чотири етапи поспіль, а потім робите довгу перерву в 15 хвабон (або більше, якщо хочете). Роблячи це, я вимикаю Slack-сповіщення, виходжу з Outlook і домагаюся мети! Використовуючи метод помідора, ви станете більш продуктивним і ефективним, оскільки зможете писати якісніший код. Це безпрограшна ситуація :)

2. Оптимізм

Ви коли-небудь брали участь у ідеальному проекті, який ніколи не вимагав змін та працював без помилок на етапі тестування? У моїй практиці такого не траплялося. Досконалість як мету чудово мотивує, але рідко досягається. Проекти змінюються в останню хвабону, і ми змушені відмовлятися від задуму, щоб реалізувати його по-іншому. Випуск продукту іноді затримується через непрямі фактори, на які ми не можемо вплинути. Команда робить тести користувача перед проектуванням, але потім несподівано виявляється, що людей цікавлять зовсім інші функції. Що робити у подібній ситуації? Ми робимо глибокий вдих і в будь-якому випадку досягаємо результату. Частка оптимізму під час зустрічі з проблемою підтримує високий моральний дух команди, перетворюючи проблему на доступне вирішення завдання. Робота над важливими змінами, які зрештою покращать результат, мотивує та захоплює. Люди поважають позитивний настрій під час важких моментів, а потім беруть із них приклад. Якщо ви станете взірцем для наслідування, це буде справжнім даром для вашої кар'єри. Ваше ставлення до роботи та оптимізм залежать лише від вас.

3. Спілкування

На будь-якому етапі спілкування, чи то робочі апдейти для учасників команди, чи відповідь на запити, програмістам буває складно правильно будувати комунікацію. А це важливо, оскільки дозволяє уникнути потенційних розбіжностей чи непорозумінь. Навички спілкування – життєво важливий інструмент в арсеналі розробника. У комунікації необхідно дотримуватися кількох правил, які здатні вплинути на бізнес і зміцнення взаємовідносин у команді.
  1. Ставтеся до інших з повагою та підтримуйте цей стандарт у своїй компанії.
  2. Якщо виникли суперечності, будьте об'єктивними. Якщо хтось не згоден, з'ясуйте причину та використовуйте факти, щоб знайти найкраще рішення.
  3. Зосередьтеся на результатах замість того, щоб шукати, хто має рацію, а хто ні.
  4. Під час спілкування одразу з'ясовуйте відповіді на запитання: «що, коли, де, чому і хто».
  5. Тримайте своє его під контролем.
  6. Уникайте скарг без потенційних рішень.
Незважаючи на те, що люди спілкуються щодня, нам усім варто прокачувати свої навички спілкування. Так ми зможемо стати кращими!

4. Чесність

Вчиняйте правильно, навіть коли ніхто не дивиться — у цьому сенс життя сумління. Іноді розробники мають доступ до приватної інформації користувачів (особисті дані або IP-адресау). Люди, яких ви ніколи не зустрічали, довіряють вам та вашій компанії захист своїх персональних даних та паролів. Ви повинні виправдати їхню довіру! Під час авралів буває складно дотримуватись стандартів командної розробки. Але це не повинно впливати на те, як чесно ви виконуєте свою роботу! Ситуації, які потребують чесності, нескінченні, у кожній з них ми повинні відповідати нашим повсякденним принципам. Просто запам'ятайте мантру: Робіть правильно, навіть коли ніхто не дивиться.
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ