Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Angular js best practice
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Matteo
October 20, 2015
Technology
2
71
Angular js best practice
Slide from the talk: "Angular js best practice - for Enterprise development and distributed Teams"
Matteo
October 20, 2015
Tweet
Share
Other Decks in Technology
See All in Technology
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
150
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
230
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
150
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.7k
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
430
Digitization部 紹介資料
sansan33
PRO
1
6.8k
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.8k
Webhook best practices for rock solid and resilient deployments
glaforge
1
280
Cosmos World Foundation Model Platform for Physical AI
takmin
0
790
今日から始めるAmazon Bedrock AgentCore
har1101
4
400
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
300
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.5k
BBQ
matthewcrist
89
10k
First, design no harm
axbom
PRO
2
1.1k
Mind Mapping
helmedeiros
PRO
0
79
Crafting Experiences
bethany
1
48
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
Scaling GitHub
holman
464
140k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Build your cross-platform service in a week with App Engine
jlugia
234
18k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
200
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
84
Transcript
AngularJs Best Practice for Enterprise development and distributed Teams #angularconf15
Matteo Scandolo FE Developer Team Leader Code Quality and Maintainability
@_teone
Enterprise? for Enterprise development … big complex fluid teams multiple
developers system integrations
Distributed? … distributed Teams communication delays
10 rules to improve your Angular project #angularconf15
#1 Planning - Constraints - Technical Choices - Application Architecture
- Modules - Shared Method - Dependencies - Guidelines - Tooling
Immagine dello schema di un progetto
Npm Scripts
#2 Setup README.md - Dev Environment - Deploy - Tests
- Styleguide* - Environment Configurations* - Documentation* - Contributors*
#3 Styleguide Force devs to write similar code - Js
styleguide - Air Bnb - Angular Styleguide - Jhon Papa with a styleguide with no styleguide Dev Speed
ES Lint Pluggable linting utility - Configurable (Json, Yml) -
Pluggable (as npm packages) - Extendable - custom rules - yeoman generator
ES Lint
ES Lint
Force
#4 Tests Why are they so important? - Prevent regressions
- Reduce Bugs - Code enhancement - Document features
Karma + Jasmine Karma - Test Runner Jasmine - Assetion
Library PhantomJs - Headless browser
The Old Way...
The Clean Way
#5 Documentation Not talking about high-level documentation Technical Docs -
List all available methods - Teach how to use them - Specify parameter type - Provide Examples - Can do more?
REST API Build a representation of your restfull API -
Interactive documentation - Client SDK generation
REST API
REST API
REST API
REST API Can generate ngResouces automatically! - signalfx/swagger-angular-client - swagger-api/swagger-codegen
NG DOC ngDoc - Extend jsDoc - Browsable Documentation -
Describe the app API - Provide usage examples
NG DOC What can we describe: - Docs template (@ngdoc)
- Name - Belongings (@methodOf) - Description - Params - Return - Angular Specific Attribute - @restrict
NG DOC
PARAMETER TYPES...
#6 Code Quality Automate Code Quality Check - Dependencies Status
- Duplicated Code - Complex Function - Error Handling - Lint Status - Test Coverage
BITHOUND.IO Software insight as a service Free for OS project
BITHOUND.IO
BITHOUND.IO
KARMA COVERAGE Karma Coverage Plugin - Easy to set up
- Generate different format
Usage
#7 Continuous Integration Why? - Automate the process - Error
reduction - Generate reports - 1 click (or no-click deploy)
Tools Travis CI Jenkins CI Strider CD
Tools
#8 Development Workflow Git Flow - Stable branch with released
version - Stable branch with new features - Shared Standard
How dows it work... GIT FLOW: https://www.atlassian.com/git/tutorials/comparing- workflows/gitflow-workflow Master Develop
Feature Branch Release Branch HotFix Branch
Tools...
#9 Team Communication SLACK - Issues - Snippets - Usefull
Link - Dependencies Docs - Real Time Notification
Tools...
#10 Ask yourself.. If I leave tomorrow… … and someone
have to work on this project … Will I like to be that guy?
Thanks! @_teone #angularconf15