The HTTP protocol was created in 1990 and led to the establishment of the World Wide Web by English physicist Tim Berners-Lee. It led to what is now the world's most used language, HTML (Hyper Text Markup Language). HTML5 is being developed as the next major revision of HTML: what is it about? What will it change?
Asp.Net MVC 3 - Il Model View Controller secondo MicrosoftStefano Benedetti
油
Il pattern architetturale MVC (Model View Controller) favorisce la manutenzione delle applicazioni web tramite una architettura elegante ed una chiara ed esplicita separazione delle competenze, l'impiego dei pi湛 diffusi pattern di software engineering, il controllo completo dell'HTML generato e degli URL, la testabilit ed estendibilit.
In questa sessione vedremo le novit principali di Asp.Net MVC in versione 3.
La sessione 竪 stata tenuta a SMAU Business Bologna il 9 giugno 2011
How create a single page apps using html5 and javascript Stefano Marchisio
油
Create a html5/javascript apps with mvc/ajax using knockout.js/mvvm. Javascript to IQueryable is a framework that allows you to write a simple query in javascript client side and then execute it server side with EntityFramework or a linq provider that implement IQueryable. On the server is used "Dynamic Expressions and Queries in LINQ by Microsoft" to compose dynamically your query. In this way you can create a grid with filter, paging and sort functions. There is also support for: mvc3 unobtrusive jquery validation and jquery mobile/phonegap. - http://Javascriptiqueryable.codeplex.com - http://www.youtube.com/watch?v=qjwyKwsXHKs - http://www.linqitalia.com/articoli/entity-framework/sfruttare-javascript-eseguire-query-linq-server-tramite-dynamic-iqueryable.aspx
Ho incontrato django 8 mesi fa e mi ha riconciliato con la programmazione web che francamente detestavo. Ne ho apprezzato il disegno e la chiarezza.
Qui presento una libreria -- jungle -- ed alcune applicazioni costruite attorno a django sostituendo il sistema di templating originario con 'mako', un sistema di templating recente di Michael Bayer autore fra l'altro di sqlalchemy.
Il sistema di templating di django 竪 forse uno degli elementi pi湛 criticati e pi湛 difesi dagli sviluppatori di django. L'idea di base 竪 che deve restare facilmente utilizzabile da una utenza (il grafico web) che ha normalmente poca dimestichezza con la programmazione motivo per cui i tradizionali elementi di programmazione sono ridotti o mancanti.
L'esperienza mia 竪 che in molte realt invece chi scrive le pagine 竪 il programmatore stesso o persona che pu嘆 imparare con uguale sforzo i rudimenti per potere usare dei sistemi di templating che permettono alcuni costrutti python.
A questo punto si aprono molte possibilit decisamente efficaci. I template risultano molto pi湛 leggibili senza perdere in chiarezza. Particolarmente efficace 竪 l'uso di layout simbolici per la creazione di form e tabelle.
La relazione vuole presentare il lavoro fatto in Thunder Systems srl negli ultimi 8 mesi e disponibile con licenza GNU tramite lo studio di alcune piccole applicazioni costruite con questa libreria fra cui un sistema di ticketing ed un sistema di gestione orari dipendenti/cartellino/badge.
Asp.Net MVC 3 - Il Model View Controller secondo MicrosoftStefano Benedetti
油
Il pattern architetturale MVC (Model View Controller) favorisce la manutenzione delle applicazioni web tramite una architettura elegante ed una chiara ed esplicita separazione delle competenze, l'impiego dei pi湛 diffusi pattern di software engineering, il controllo completo dell'HTML generato e degli URL, la testabilit ed estendibilit.
In questa sessione vedremo le novit principali di Asp.Net MVC in versione 3.
La sessione 竪 stata tenuta a SMAU Business Bologna il 9 giugno 2011
How create a single page apps using html5 and javascript Stefano Marchisio
油
Create a html5/javascript apps with mvc/ajax using knockout.js/mvvm. Javascript to IQueryable is a framework that allows you to write a simple query in javascript client side and then execute it server side with EntityFramework or a linq provider that implement IQueryable. On the server is used "Dynamic Expressions and Queries in LINQ by Microsoft" to compose dynamically your query. In this way you can create a grid with filter, paging and sort functions. There is also support for: mvc3 unobtrusive jquery validation and jquery mobile/phonegap. - http://Javascriptiqueryable.codeplex.com - http://www.youtube.com/watch?v=qjwyKwsXHKs - http://www.linqitalia.com/articoli/entity-framework/sfruttare-javascript-eseguire-query-linq-server-tramite-dynamic-iqueryable.aspx
Ho incontrato django 8 mesi fa e mi ha riconciliato con la programmazione web che francamente detestavo. Ne ho apprezzato il disegno e la chiarezza.
Qui presento una libreria -- jungle -- ed alcune applicazioni costruite attorno a django sostituendo il sistema di templating originario con 'mako', un sistema di templating recente di Michael Bayer autore fra l'altro di sqlalchemy.
Il sistema di templating di django 竪 forse uno degli elementi pi湛 criticati e pi湛 difesi dagli sviluppatori di django. L'idea di base 竪 che deve restare facilmente utilizzabile da una utenza (il grafico web) che ha normalmente poca dimestichezza con la programmazione motivo per cui i tradizionali elementi di programmazione sono ridotti o mancanti.
L'esperienza mia 竪 che in molte realt invece chi scrive le pagine 竪 il programmatore stesso o persona che pu嘆 imparare con uguale sforzo i rudimenti per potere usare dei sistemi di templating che permettono alcuni costrutti python.
A questo punto si aprono molte possibilit decisamente efficaci. I template risultano molto pi湛 leggibili senza perdere in chiarezza. Particolarmente efficace 竪 l'uso di layout simbolici per la creazione di form e tabelle.
La relazione vuole presentare il lavoro fatto in Thunder Systems srl negli ultimi 8 mesi e disponibile con licenza GNU tramite lo studio di alcune piccole applicazioni costruite con questa libreria fra cui un sistema di ticketing ed un sistema di gestione orari dipendenti/cartellino/badge.
1. Guida pratica al primo
approccio con Gutenberg per
programmatori PHP
#WCMIL - 17NOV2018
2. @dottxado #WCMIL 2018
Erika Gili
Ingegnere energetico
Fullstack web developer
Motociclista
Ex bassista
Ex atleta agonista di karate
Nata a Terni, abitato a
Perugia, Genova, Genzano di
Roma, Roma, ora a Bassano
del Grappa
3. @dottxado #WCMIL 2018
La tua opinione conta!
bit.ly/wcmil-blocchi-erika
bit.ly/wcmil-blocks-erika
4. @dottxado #WCMIL 2018
Obiettivi
Avvicinarvi allo sviluppo di estensioni Gutenberg
tramite esempio pratico
+Fornire fonti di documentazione
Portarvi suggerimenti che sono frutto dellesperienza
maturata su 3 progetti in produzione
5. @dottxado #WCMIL 2018
Fonti
Codice: https://github.com/WordPress/gutenberg
Changelog: https://make.wordpress.org/core/tag/gutenberg
Documentazione: https://wordpress.org/gutenberg/handbook
Scaffold di codice
https://developer.wordpress.org/cli/commands/scaffold/block
https://github.com/ahmadawais/create-guten-block
Seguire gli sviluppatori su Twitter o sui
loro blog, studiare i plugin nel repo
ufficiale
6. @dottxado #WCMIL 2018
Ed oracodice
WP CLI per lo scaffold
Plugin
4 blocchi:
1 blocco statico (contenuto 鍖sso)
2 blocchi editabili innestati (contenuto modi鍖cabile)
1 blocco dinamico (fornito dal server)
https://github.com/dottxado/wcmil-2018-example
10. @dottxado #WCMIL 2018
Blocco statico 01 / JS
var registerBlockType = wp.blocks.registerBlockType;
var el = wp.element.createElement;
registerBlockType('wcmil-2018-example/block-01', {
title: __('Block 01'),
category: 'widgets',
supports: {
html: false,
},
edit: function (props) {},
save: function () {}
});
//wordpress.org/gutenberg/handbook/block-api/
11. @dottxado #WCMIL 2018
Blocco statico 01 / JS
edit: function (props) {
return el(
'p',
{className: props.className},
__('Hello from the editor!')
);
},
save: function () {
return el(
'p',
{},
__('Hello from the saved content!')
);
}
Durante lo sviluppo, usa console.log
allinizio di ciascun metodo
Eseguito ad OGNI
modifica del
blocco
Eseguito al
caricamento o al
salvataggio
delleditor
14. @dottxado #WCMIL 2018
Blocco editabile 03 / JS
edit: function( props ) {
var url = props.attributes.url;
var id = props.attributes.id;
var description = props.attributes.description;
return el(
'div',
{
className: [props.className, 'column'].join(' ')
},
el(
MediaUpload, {[...options...]}
),
el(
RichText, {
tagName: 'p',
value: description,
onChange: function (newValue) {
props.setAttributes({description: newValue});
},
placeholder: __('Inserisci la descrizione'),
keepPlaceholderOnFocus: true,
}
),
);
},
Accedo agli
attributi
Componenti
//github.com/WordPress/gutenberg/tree/master/
packages/editor/src/components
15. @dottxado #WCMIL 2018
Blocco editabile 03 / JS
save: function(props) {
return el(
'div',
{
className: 'column'
},
el(
'img', {
src: props.attributes.url,
}
),
props.attributes.description.length > 0 && el(
RichText.Content, {
tagName: 'p',
value: props.attributes.description,
}
),
);
}
Sempre controllare la presenza del contenuto
al momento del salvataggio
16. @dottxado #WCMIL 2018
Blocco editabile 03 / JS
parent: ['wcmil-2018-example/block-02'],
Non 竪 possibile trovarlo nellinserter perch辿 竪 disponibile solo
per il blocco parent block-02, il quale deve essere in grado di
includerlo tramite il componente InnerBlocks
31. @dottxado #WCMIL 2018
E cosaltro?
Post Meta
State & Components
Modifica dei blocchi core
Transforms
Deprecated
Styles
Rest
Categorie custom
Nuovi hook
Whitelist dei blocchi
Errori di validazione
Template
Blocchi assegnati ai post type