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
Some Modern Tools for Developers
Search
landish
April 16, 2015
Programming
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Some Modern Tools for Developers
landish
April 16, 2015
More Decks by landish
See All by landish
Anatomy Of The Web
landish
1
200
Markdown
landish
0
180
Introduction to Ionic Framework
landish
0
110
PHPUnit
landish
0
120
Introduction to GIT
landish
0
78
Other Decks in Programming
See All in Programming
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
540
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
500
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
270
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1k
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
110
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
340
数百円から始めるRuby電子工作
tarosay
0
100
GitHubCopilotCLIのスラッシュコマンドを自作してみる
htkym
0
100
yield再入門 #phpcon
o0h
PRO
0
720
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.7k
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
150
Built Our Own Background Agent at LayerX #aidevex_findy
layerx
PRO
8
3.1k
Featured
See All Featured
Paper Plane
katiecoart
PRO
2
52k
KATA
mclloyd
PRO
35
15k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
470
How STYLIGHT went responsive
nonsquared
100
6.2k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
470
Design in an AI World
tapps
1
270
Mind Mapping
helmedeiros
PRO
1
290
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
270
Making Projects Easy
brettharned
120
6.7k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Transcript
None
Node.js & Ruby & Terminal https://nodejs.org/ http://rubyinstaller.org/ Terminal your BFF
IDE WebStorm for Front-End Development PHPStorm = Webstorm + PHP
https://jetbrains.com/
WebStorm - PHPStorm Features • Best Code Intellisense • Built-in
Terminal • REST Service Tool • GIT Support • Emmet (Zen Coding) Support • PRE-Compilers Support (SASS, Coffee) • Modern Tools Support - Gulp, Bower, etc… • ...
WebStorm - PHPStorm Features List of Full Features https://jetbrains.com/webstorm/features/ https://jetbrains.com/phpstorm/features/
Course: Be Awesome in PHPStorm
Editor Sublime Text 2/3 - https://sublimetext.com Brackets - http://brackets.io/ Atom
- https://atom.io/
Local Server [WIN] WampServer - http://wampserver.com/ [MAC] MAMP PRO -
https://mamp.info/en/
WampServer PHP Extensions / Apache Modules - Enable / Disable
WampServer h Alias Name: my-custom-app Address: http://localhost/my-custom-app Alias Name: my-custom-app-2
Address: http://localhost/my-custom-app-2 Alias Name: my-custom-app-3 Address: http://localhost/my-custom-app-3
WampServer Online / Offline Mode http://YOUR_INTERNAL_IP/
WampServer PHP Built-in Server command: php -S localhost:PORT
GIT https://bitbucket.org/ http://sourcetreeapp.com/
None
GIT - SourceTree App http://sourcetreeapp.com/
GIT - SourceTree App Registration FREE: http://sourcetreeapp. com/register/
GIT - Bitbucket - Smart Commits JRA-34 #time 1w 2d
4h 30m JRA-34 #comment corrected indent issue JRA-090 #resolve Fixed this today …. <KEY> <COMMAND> <value> https://confluence.atlassian.com/display/FISHEYE/Using+smart+commits https://confluence.atlassian. com/display/Cloud/Processing+JIRA+issues+with+commit+messages
GIT Ignore .gitignore: .idea /node_modules /vendor .sass-cache
Forget to add to .gitignore? git rm --cached . git
add . git commit
Emmet (Zen Coding) http://emmet.io/ Cheat Sheet
SASS + Compass SASS = CSS PREProcessor Compass = SASS
Framework http://sass-lang.com/ http://compass-style.org/
SASS + Compass
SASS (Requires Ruby) Install Ruby - http://rubyinstaller.org/ Install SASS -
gem install sass Install Compass - gem install compass
SASS/Compass Features • Variables • Nesting • Partials • Mixins
(Functions) • Compass Helpers • ...
SASS Formats / Syntax File Extensions: *.scss and *.sass scss
= css + advanced css sass = clean, simple, bracketless (no {})
SASS Variables app.scss app.css
SASS Nesting
SASS Mixins
SASS Partials
Compass Sprites http://compass-style.org/help/tutorials/spriting/
Compass Demos Demo: Background Gradients Demo: CSS3 Transition Demo: Font
Face Example Demo: Box-shadow ...
Configuration (config.rb) https://gist.github.com/nathansmith/1179395
Watch and Compile command: compass compile # or command: compass
watch # start a new project command: compass init # clean compiled files command: compass clean
Resources - SASS / Compass http://sass-lang.com/ http://compass-style.org/ http://www.hongkiat.com/blog/getting-started-saas/ http://thesassway.com/intermediate/spriting-with-sass-and-compass http://teamtreehouse.com/library/compass-basics
Course: http://leveluptuts.com/tutorials/sass-tutorials Course: http://leveluptuts.com/tutorials/compass-tutorials
CoffeeScript & TypeScript http://coffeescript.org/ npm install -g coffee-script http://typescriptlang.org/ npm
install -g typescript Next Version of JS
CoffeeScript Classes & Inheritance
TypeScript Classes
TypeScript Inheritance
HTML PREProcessors http://haml.info/ http://jade-lang.com/
HAML
Jade
Source Maps & Workspace
Source Maps & Workspace • https://developer.chrome.com/devtools/docs/workspaces • http://www.sitepoint.com/using-source-maps-debug-sass-chrome/ • http://code.tutsplus.com/tutorials/working-with-less-and-the-chrome-
devtools--net-36636
JSBin http://jsbin.com/
NPM & package.json https://www.npmjs.com/
NPM Modules /node_modules add that folder .gitignore .idea /node_modules ...
Gulp.JS - Javascript Task Runner http://gulpjs.com/ npm install -g gulp
Gulp Features • Set-up a Node.js Server • Concatenate Files
• Minify Files • Precompile Assets (CSS, JS, HTML) • Extendable (by Plugins) • ...
Essential Gulp Plugins gulp-sass - Compile SASS to CSS gulp-compass
- Compile Compass to CSS gulp-uglify - Minify JS Files gulp-concat - Concatenate (Merge) Multiple files into one gulp-browser-sync - Synchronize browser with project ( http://browsersync.io/ ) … laravel/elixir - Laravel specific, but All-in-one gulp plugin. ... http://gulpjs.com/plugins/
gulpfile.js var gulp = require('gulp'); var concat = require('gulp-concat'); gulp.task('scripts',
function() { return gulp.src('src/*.js') .pipe(concat('app.js')) .pipe(gulp.dest('dist/js')); }); gulp.task('watch', function() { gulp.watch('src/*.js', ['scripts']); });
Gulp Resources • Getting Started With Gulp.js • Course: Learning
Gulp • http://gulpjs.com/ • https://github.com/laravel/elixir • http://laravel.com/docs/5.0/elixir • https://laracasts.com/index/elixir
Bower & Package Management http://bower.io/ npm install -g bower
Bower - List of Packages http://bower.io/search/ command: bower search [package]
bower search jquery
Bower - Install/Update Packages install command: bower install jquery install
and save: bower install jquery --save update command: bower update jquery uninstall command: bower uninstall jquery
Bower.json command: bower init bower.json
Bower Configuration - .bowerrc /bower_components ( default ) .bowerrc {
“directory” : “packages” } http://bower.io/docs/config/
Javascript Frameworks http://emberjs.com/ http://backbonejs.org/ https://angularjs.org/ http://knockoutjs.com/ https://facebook.github.io/react/
AngularJS • 2-way data binding • Filters • Directives -
Custom HTML snippets • 3rd-party libraries • … Showcases: https://builtwith.angularjs.org/ Best Practices: https://github.com/mgechev/angularjs-style-guide https://github.com/johnpapa/angular-styleguide
AngularJS Resources • https://egghead.io/ • http://ngmodules.org/ • angular free course
• https://thinkster.io/a-better-way-to-learn-angularjs/
AngularJS Directory Structure
Javascript Helpers http://underscorejs.org/
Underscore.js
lodash.js https://lodash.com/
Kendo UI http://www.telerik.com/kendo-ui
Kendo UI - Components • Grid • Chars • Editor
• Upload • Window • Tree View • Auto Compete • Date Picker • Multi Select • Buttons • Tabs • Sorting • Filtering • …. http://demos.telerik.com/kendo-ui/
Kendo UI - Grid
Kendo UI Grid
+ =
Kendo Grid - AngularJS
Kendo Grid AngularJS
Kendo UI - Resources http://www.pluralsight.com/courses/introduction-to-kendoui http://www.pluralsight.com/courses/kendo-ui-angularjs-from-scratch
HTML5 Mobile Applications https://mbookmakers.adjarabet.com/ Built with: jQuery Mobile Access: Safari/Browser
App Store / Google Play - NO
HTML5 Mobile Applications NO jQuery Use Vanilla JS, AngularJS ...
NO GIF Animations Use CSS Animations, GSAP Modular Approach Single Page Application
HTML5 Mobile Applications Mobile App Icon Generator Sencha Touch
Composer - PHP Package Management https://getcomposer.org/ Windows Installer https://packagist.org/
Composer - composer.json
Composer - Commands composer create-project laravel/laravel . composer require author/package-name
composer require-dev author/package-name composer install composer update composer dump-autoload -o vendor/autoload.php
Laravel - PHP Framework http://laravel.com/
Laravel - Installation composer create-project laravel/laravel Laravel installer: laravel new
app_name Artisan: php artisan serve # http://localhost:8000
Laravel - Routes /app/Http/routes.php http://laravel.com/docs/5.0/routing
Laravel - Controllers /app/Http/Controllers UserController.php
Laravel - REST Resource Controllers
Laravel - Database Queries
Laravel - Eloquent ORM ORM - Object Relational Mapping db
table: users (plural, lowercase) eloquent model: User.php (singular, capitalize)
Laravel - Eloquent ORM app/User.php
Laravel - Eloquent - CRUD Create Read Update Delete
Laravel - Eloquent - CRUD
Laravel - Eloquent - Where Clause
Laravel - Eloquent - Mass Assignment
Laravel - Eloquent - JSON/Array
Laravel - Eloquent - Relationships • One To One •
One To Many • Many To Many • Has Many Through • Polymorphic Relations • Many To Many Polymorphic Relations
Relationships - One to One
Relationships - One to Many
Relationships - Many to Many
Relationships - Has Many Through
Polymorphic Relations
Many To Many Polymorphic Relations
Laravel - Eloquent - Eager Loading X
Laravel - Eloquent - Eager Loading V
Laravel - Model Events • creating • created • updating
• updated • saving • saved • deleting • deleted • restoring • restored
Laravel - Authentication
Laravel - Views
Laravel - Blade Template
Laravel - Blade Template
Laravel - Blade Template
Laravel - Localization
Laravel - Localization
Laravel - Localization
Laravel - Artisan CLI
Laravel - Artisan CLI
Laravel - Migrations database/migrations/XXXXXXXX_create_users_table.php
Laravel - Migrations
Laravel - Migrations
Laravel Database Seeding
Laravel - Resources Documentation Laravel 5 From Scratch What's New
in Laravel 5.0