È considerata una buona pratica scrivere i componenti ColdFusion e tutta la logica di business in CFScript e usare CFML solo nei file .cfm tra l’HTML.
La sintassi CFScript fornisce un modo per scrivere codice CFML senza usare tag, e può essere sia in un componente basato su script (CFC) che all’interno del tag cfscript. I tag CF sono praticamente ciò che rende la nostra sintassi molto meglio di altri linguaggi. E ColdFusion non manca di tag unici incorporati. Infatti, ci sono quasi 100 tag completamente unici, ognuno con la propria funzione individuale.
La sintassi esegue l’elaborazione in CFScript. Utilizza funzioni, espressioni e operatori ColdFusion. Potete leggere e scrivere variabili ColdFusion all’interno di questo tag. Per una descrizione dettagliata del linguaggio di scripting CFScript, compresa la documentazione delle istruzioni CFScript e gli equivalenti CFScript dei tag CFML, vedete Estendere le pagine ColdFusion con lo scripting CFML.
Potete usare questo tag per racchiudere una serie di istruzioni di assegnazione che altrimenti richiederebbero istruzioni cfset.
CFScript:
<cfscript> xParam = 115; yParam = 200; color = 'FFCC99';</cfscript>
Sintassi
1
2
3
|
< cfscript > // cfscript
code here
</ cfscript > |
ColdFusion Components (CFCs)
Adobe ColdFusion ha anche la capacità unica di interagire con gli oggetti e la programmazione Object-Oriented programming con l’uso di ColdFusion Components.
Pensate ai CFC come agli oggetti di ColdFusion. Nel loro nucleo, sono essenzialmente solo un fascio di funzioni avvolte ordinatamente per rappresentare una singola entità – diciamo il vostro gruppo di impiegati. Questo potrebbe essere un piccolo pacchetto di programmazione che usate per regolare i record dei vostri impiegati.
Per ogni CFC si possono assegnare diverse funzioni. Ricordate che le funzioni sono il cuore dei CFC. Quindi, puoi assegnare funzioni per elencare, creare, aggiornare o anche cancellare i record dei dipendenti.
Ora, molti di voi veterani di CF là fuori staranno pensando… “Sì, sì. Avrei potuto fare tutto questo con l’uso di <cfinclude>.” E non avreste torto. Ma ci sono molti altri benefici nell’usare i CFC, oltre ad una comoda palla di funzioni.
Benefici dei CFC
- Aumento delle prestazioni
- In poche parole, i CFC sono più veloci. E c’è una buona ragione per questo. Sono già compilati. Dopo la prima volta che li usi comunque. Perché dopo, rimangono precompilati. E questo dura finché non si aggiorna il componente. (Nel qual caso, compila una volta e poi rimane fino al prossimo aggiornamento.)
- Riutilizzabile e trasferibile
- Puoi codificare i tuoi componenti per diventare un pezzo di codice stabile che puoi spostare liberamente senza romperlo. Questo significa che potete effettivamente copiare e incollare i vostri componenti da una parte all’altra del vostro codice.
- Auto-documentazione
- I vostri CFC sono auto-documentati. Questo significa che producono i loro propri commenti. Beh, a meno che non usiate l’attributo “Hint”, naturalmente.
- Sicurezza
- I componenti ColdFusion sono più sicuri di un oggetto medio. Potete effettivamente limitare l’accesso sia ai CFC che alle funzioni associate.
- Outreach
- Si potrebbe supporre che i CFC possano condividere metodi con altri CFC. E questo sarebbe vero. Ma sapevate che potreste anche estendere queste proprietà a entità non-ColdFusion, come le chiamate SOAP o URL?
La sicurezza di Adobe ColdFusion: Second to None
Per quanto mi addolori dirlo… Ci sono molti là fuori che odiano ColdFusion. Cercate ovunque e troverete qualche tipo di rapporto su quanto ColdFusion sia “effettivamente” poco sicuro. Ma ecco il punto. Nessuno odia chi sta in fondo al branco. Sono già lì. È troppo facile. Ma se hai dei veri “haters”, devi stare facendo qualcosa di giusto.
Ebbene, quando si tratta di sicurezza, Adobe ColdFusion 2018 non è secondo a nessuno.
Ogni piattaforma dirà che è la più sicura. Che sono il top della linea. Ma la maggior parte di questo è solo un mucchio di retorica. Dove sono le prove? Dove sono i dati?
Che ne dite di questo… Lasciate che condivida alcuni dati con voi.
Secondo CVE Details (l’ultima risorsa per le vulnerabilità di sicurezza), ColdFusion ha solo una frazione delle vulnerabilità di sicurezza che hanno altri linguaggi di programmazione.
Lasciate che si impantino. E se non mi credete… Ecco il link. Vai avanti e controlla. Io aspetterò.
E sapete cosa è ancora meglio per noi di CF… Quel grafico e l’analisi risalgono al 2006. Quindi, per oltre un decennio, ColdFusion è stata costantemente la piattaforma di sviluppo web più sicura là fuori. Dite quello che volete. I numeri non mentono.
Ci sono buone ragioni per questo. Adobe si preoccupa della vostra sicurezza. Forniscono costantemente nuovi aggiornamenti e patch di sicurezza per mantenere noi come CF un passo avanti. E per questo dobbiamo ringraziare Adobe.
ColdFusion Auto Security Lockdown
Nel rilascio di Adobe ColdFusion 2018, è stato introdotto uno strumento molto potente per migliorare le nostre capacità di sicurezza.
La funzione Auto Lockdown.
Ogni sviluppatore che si rispetti comprende l’importanza di proteggere adeguatamente il proprio sistema. Può fare la differenza tra la vita e la morte (delle vostre applicazioni web ColdFusion). Quindi è fantastico che Adobe abbia rilasciato questa funzione.
Esegue automaticamente la scansione e la ricerca del codice della vostra applicazione per qualsiasi vulnerabilità di sicurezza esistente e qualsiasi potenziale violazione della sicurezza. Determina l’esatto codice vulnerabile, il tipo di vulnerabilità e il livello di gravità. Dopo tutto questo, l’analizzatore vi presenta la possibilità di rimuovere e riparare il problema attraverso i mezzi raccomandati.
Ma dobbiamo anche ringraziare la nostra comunità. Adobe non è l’unica a prendersi cura di noi. I membri della nostra stessa comunità stanno sviluppando applicazioni di terze parti per trasformare la nostra piattaforma in qualcosa di più grande e migliore. E quando si tratta di sicurezza… una società viene in mente.
Related: Top 5 Problemi di sicurezza risolti con Adobe ColdFusion 2018
Foundeo Inc è un’organizzazione indipendente dedicata ad aumentare la sicurezza della vostra piattaforma ColdFusion. E hanno delle credenziali serie. Vedete, il fondatore della società non è altri che Pete Freitag. Il guru della sicurezza più riconosciuto di CF. Ha persino aiutato a costruire le guide di blocco di ColdFusion.
E ha costruito un paio di strumenti di terze parti per promuovere ulteriormente la nostra sicurezza, in particolare FuseGuard.
FuseGuard è un Web Application Firewall (WAF) specifico per ColdFusion che protegge dai comuni exploit degli hacker.
Secondo la documentazione di FuseGuard ColdFusion Web Application Firewall, ecco come funziona FuseGuard.
- Una richiesta arriva e viene inviata al firewall attraverso il vostro file Application.cfm o Application.cfc.
- Il firewall esegue ogni filtro che avete configurato, e il filtro restituisce un livello di minaccia da 0 a 10 (10 è il più pericoloso).
- Se un filtro restituisce un livello di minaccia maggiore o uguale al livello di blocco configurato, la richiesta viene bloccata e gli altri filtri non vengono eseguiti.
- Se un filtro restituisce un livello di minaccia maggiore o uguale al livello di log configurato, la richiesta viene registrata.
- È possibile scrivere il proprio logger personalizzato o utilizzare uno dei logger inclusi nel prodotto.
- Se un filtro restituisce un livello di minaccia maggiore o uguale al livello di filtro configurato, la richiesta viene filtrata, il che significa che si tenta di sfuggire o rimuovere i caratteri dannosi. Non tutti i filtri supportano questa operazione.
- Se la richiesta passa con successo attraverso tutti i filtri, la richiesta può continuare verso la tua applicazione.
Fatti semplici per cui ColdFusion è il linguaggio web più sicuro
Hey CFers, sto lavorando per dimostrare che ColdFusion è (era ed è ancora…) il più sicuro rispetto ad altri linguaggi di programmazione. Ecco qualcosa che ho trovato recentemente
ColdFusion Vs. PHP ColdFusion Vs. Oracle JRE ColdFusion Vs. Apache Tomcat ColdFusion Vs. Ruby on Rails ColdFusion Vs. Microsoft .net Framework
I dettagli CVE specificano il numero di vulnerabilità critiche. In confronto con altri linguaggi.
- http://www.cvedetails.com/vendor/74/PHP.html
- http://www.cvedetails.com/product/1526/SUN-JRE.html?vendor_id=5
- https://www.cvedetails.com/product/19117/Oracle-JRE.html?vendor_id=93
- http://www.cvedetails.com/product/887/Apache-Tomcat.html?vendor_id=45
- https://www.cvedetails.com/product/2002/Microsoft-.net-Framework.html?vendor_id=26
- https://www.cvedetails.com/product/22568/Rubyonrails-Ruby-On-Rails.html?vendor_id=12043
- 5 motivi per cui Adobe ColdFusion è meglio di C#
Impara di più: Libri di programmazione gratuiti
Cosa rende Adobe ColdFusion così speciale?
Dopo 23 anni e centinaia, se non migliaia, di linguaggi di programmazione attivi, perché Adobe ColdFusion è ancora vivo e vegeto?
Il segreto di ciò si nasconde nel linguaggio ufficiale stesso e nella sua sintassi.
CFML è un linguaggio basato su tag diverso da qualsiasi altro. La sua facilità d’uso e l’ampia gamma di funzionalità lo rendono un concorrente di primo piano per qualsiasi sviluppatore.
E nell’era moderna, ColdFusion fa qualcosa di meglio di qualsiasi altro linguaggio là fuori.
Sicurezza.
Rispetto ad altri linguaggi di programmazione, Adobe ColdFusion si presenta come una vera e propria fortezza digitale. Con sorprendenti capacità di sicurezza integrate ed esperti come Pete Freitag che guidano la carica, Adobe ColdFusion 2018 (con il 2020 che uscirà quest’anno) continuerà a rimanere secondo a nessuno in questo settore.
Unitevi a me mentre diamo uno sguardo alle radici di ColdFusion e ci avventuriamo in ciò che lo rende così speciale.
“Amo il linguaggio. È stato il primo linguaggio che ho imparato… il mio amico mi ha detto, ‘Beh, sai che c’è questo linguaggio chiamato ColdFusion che ha un tag cfquery, un tag cfoutput e un tag cfmail’, e mi sono innamorato. Questa è la verità. Ho lavorato in altri linguaggi nel corso degli anni e anche se mi piacciono tutti, quando ho bisogno di far uscire un’idea veloce, ColdFusion sembra rendere tutto molto semplice da fare.”
-Giancarlo Gomez, proprietario di CrossTrackr, Inc e Fuse Developments, Inc / Senior Web App Developer at Duty-Free Americas
L’evoluzione di ColdFusion
I tempi erano più semplici allora.
Windows 95 era appena stato rilasciato portandoci dall’era del “vero” Windows in 3.1. Il DVD irrompeva sulla scena pronto a sfidare il mondo e soprattutto la VHS. E Michael Jordan uscì dalla pensione per condurre i Bulls ad altri 3 campionati.
Ma soprattutto, due fratelli si sedettero per sviluppare un modo più semplice per conquistare il World Wide Web. Uno era un ambizioso CEO pronto a sviluppare e l’altro un ingegnere del software in erba con un potenziale apparentemente illimitato. Questi erano i fratelli Allaire.
Jeremy possedeva una società di consulenza per lo sviluppo web e aveva molte grandi idee su come costruire servizi web. Ma trovava la tecnologia attuale troppo ingombrante e difficile da utilizzare. È qui che è entrata in gioco l’esperienza di suo fratello. JJ sapeva di poter risolvere le difficoltà di Jeremy. Aveva solo bisogno di sviluppare un suo sistema. Uno che non solo suo fratello potesse usare, ma qualcosa che tutti potessero usare.
E così… Nacque la prima versione di ColdFusion.
*Fatto divertente #1: sapevate che ColdFusion non era la prima scelta per il nome? I precedenti contendenti erano Horizon, WebDB e Prometheus. Prometheus era in testa con il suo logo composto da una mano e un fulmine.
Prima di ColdFusion 6.0, CF era scritto in Microsoft Visual C++. Questo lo rendeva quasi esclusivamente disponibile agli utenti Windows. Ma durante l’aggiornamento 3.1, Allaire è stato in grado di portare con successo ColdFusion su Sun Solaris aumentando ulteriormente l’accessibilità ai suoi utenti.
Nel 2001 Jeremy ha aiutato a mediare la fusione tra Allaire e il gigante dei media Macromedia. Alla fine è diventato il CTO di Macromedia e ha contribuito a guidare il suo programma Flash. Ma questo non significa che ColdFusion sia passato in secondo piano. Infatti, hanno portato ColdFusion al livello successivo.
Durante la produzione di ColdFusion 6.0, Macromedia fece un cambiamento drastico. La 6.0 era stata completamente riscritta in Java e supportava il proprio runtime. E con la 6.1 arrivò uno dei più grandi cambiamenti per ColdFusion. Permise ai suoi utenti di eseguire il debug e di codificare Shockwave Flash.
Macromedia fece meraviglie per la piattaforma sviluppando ColdFusion in un vero concorrente nel mondo dello sviluppo web. Tuttavia, un’azienda rivale stava lentamente dominando il settore. Alla fine del 2005, Adobe Systems ha acquisito Macromedia e ColdFusion con essa. Invece di liquidare la piattaforma, Adobe ha concentrato tempo e risorse su di essa. Ad oggi, Adobe ColdFusion è una delle piattaforme di programmazione più facili da usare ed efficienti disponibili. L’ultima versione è Adobe ColdFusion 2018.
CFML: Un linguaggio per sviluppatori
Forse l’elemento più forte di ColdFusion è il linguaggio stesso.
CFML.
Sta per Cold Fusion Markup Language e ci porta al nostro prossimo fatto divertente…
*Fatto divertente #2: Sapevate che per definizione CFML non è un vero linguaggio di markup. In realtà è più un linguaggio di scripting! Ma c’è di più… Alcuni considerano ColdFusion una sorta di “linguaggio collante” – un sottoinsieme di linguaggi di scripting che aiuta a collegare vari componenti software.
Ma questo non vuol dire che CFML e i linguaggi di markup non abbiano le loro somiglianze.
Adobe ColdFusion in a Nutshell
Ciò che è iniziato come una semplice soluzione all’enigma di un fratello si è evoluto in una piattaforma di sviluppo web superiore usata in tutto il mondo. La sua facilità d’uso come linguaggio di scripting basato su tag lo rende ideale per qualsiasi sviluppatore, principiante o veterano. Non solo, ma non troverete un altro linguaggio altrettanto sicuro.
Queste sono solo alcune ragioni per cui ColdFusion è il migliore in circolazione. Più tardi, esploreremo alcuni confronti diretti tra ColdFusion e alcuni altri linguaggi di programmazione in modo da poter martellare questo punto.
Ma il fatto è che… Niente è perfetto. Nonostante gli sforzi di Adobe, non hanno creato un prodotto perfetto. Ma questo è il motivo per cui migliorano costantemente la piattaforma. E indovina come ottengono la maggior parte delle loro idee?
Ascoltano la comunità. (Grande shoutout ad Adobe per questo, BTW) Prendono le nostre idee e le trasformano in realtà. Quindi, se poteste cambiare una cosa di Adobe ColdFusion, quale sarebbe? Fatecelo sapere nei commenti qui sotto. O meglio ancora… Votate sui forum di Adobe o sul canale Slack di CF.
Uniamoci e facciamo tutti la nostra parte per aiutare a mantenere CF vibrante, moderno e vivo!!!
Unisciti alla rivoluzione CF Alive
Scopri come possiamo rendere CF più vivo, moderno e sicuro quest’anno. Unisciti ad altri sviluppatori e manager ColdFusion nel CF Alive Inner Circle oggi stesso.
- Accedi in anticipo al libro e ai video CF Alive
- Fai parte di un nuovo movimento per migliorare la percezione di CF nel mondo.
- Contribuisci alla rivoluzione CF Alive
- Entra in contatto con altri sviluppatori e manager CF
- L’iscrizione è gratuita.