Het wordt als best practice beschouwd om ColdFusion Components en alle bedrijfslogica in CFScript te schrijven en CFML alleen te gebruiken in .cfm-bestanden onder HTML.
De CFScript-syntaxis biedt een manier om CFML-code te schrijven zonder tags te gebruiken, en het kan ofwel in een scriptgebaseerde component (CFC) of binnen de cfscript-tag. CF tags zijn zo’n beetje wat onze syntax zoveel beter maakt dan andere talen. En ColdFusion heeft geen tekort aan unieke ingebouwde tags. In feite zijn er bijna 100 volledig unieke tags, elk met hun eigen individuele functie.
Syntax voert bewerkingen uit in CFScript. Het gebruikt ColdFusion functies, expressies, en operatoren. U kunt ColdFusion variabelen lezen en schrijven binnen deze tag. Voor een gedetailleerde beschrijving van de CFScript scripting taal, inclusief documentatie van CFScript statements en de CFScript equivalenten van CFML tags, zie Extending ColdFusion Pages with CFML Scripting.
Je kunt deze tag gebruiken om een serie assignment statements in te sluiten die anders cfset statements zouden vereisen.
CFScript:
<cfscript> xParam = 115; yParam = 200; color = 'FFCC99';</cfscript>
Syntax
1
2
3
|
< cfscript > // cfscript code here </ cfscript > |
ColdFusion Components (CFCs)
Adobe ColdFusion heeft ook de unieke mogelijkheid om te interageren met objecten en Object-georiënteerd programmeren met het gebruik van ColdFusion Components.
Denk aan CFCs als de objecten van ColdFusion. In wezen zijn ze gewoon een bundel van functies netjes verpakt om een enkele entiteit te vertegenwoordigen – laten we zeggen uw groep van werknemers. Dit zou een keurig programmeringspakketje kunnen zijn dat je gebruikt om de records van je werknemers te regelen.
Omdat voor elke CFC, kunt u verschillende functies toewijzen. Onthoud dat functies de kern vormen van CFCs. Je kunt dus functies toewijzen om werknemersrecords op te sommen, te maken, bij te werken of zelfs te verwijderen.
Nu, de meeste CF-kenners denken waarschijnlijk… “Ja, ja. Ik had dat allemaal kunnen doen met behulp van <cfinclude>.” En je zou het niet mis hebben. Maar er zijn zoveel meer voordelen aan het gebruik van CFC’s dan alleen maar een handig bolletje functies.
Voordelen van CFC’s
- Verhoogde prestaties
- Eenvoudig gezegd: CFC’s zijn sneller. En daar is een goede reden voor. Ze zijn al gecompileerd. Na de eerste keer dat je ze gebruikt in ieder geval. Want daarna, blijft het precompiled. En dat duurt tot je de component update. (Waarbij het één keer compileert en dan blijft staan tot de volgende update.)
- Herbruikbaar en overdraagbaar
- Je kunt je componenten zo coderen dat ze een stabiel stuk code worden dat je vrij kunt verplaatsen zonder het te breken. Dit betekent dat u uw componenten effectief kunt kopiëren en plakken van het ene deel van uw code naar het andere.
- Zelf-documenterend
- Uw CFC’s zijn zelf-documenterend. Dit betekent dat ze hun eigen commentaar produceren. Nou ja, behalve als u het attribuut “Hint” gebruikt natuurlijk.
- Beveiliging
- ColdFusion-componenten zijn beter beveiligd dan het gemiddelde object. U kunt de toegang tot zowel CFC’s als de bijbehorende functies beperken.
- Outreach
- U zou ervan uitgaan dat CFC’s methoden kunnen delen met andere CFC’s. En dat zou ook zo zijn. Maar wist u dat u die eigenschappen ook kunt uitbreiden naar niet-ColdFusion entiteiten, zoals SOAP of URL-oproepen?
Adobe ColdFusion Security: Second to None
Hoezeer het me ook pijn doet om het te zeggen… Er zijn er veel die ColdFusion gewoon haten. Zoek overal en je zal een of ander rapport vinden over hoe onveilig ColdFusion “eigenlijk” is. Maar het zit zo. Niemand haat diegene die onderaan staat. Ze zijn er al. Het is te gemakkelijk. Maar als je echte “haters” hebt, moet je wel iets goed doen.
En goed, als het op veiligheid aankomt, is Adobe ColdFusion 2018 ongeëvenaard.
Elk platform zal zeggen dat het het meest veilig is. Dat ze de top van de lijn zijn. Maar het meeste daarvan is gewoon retoriek. Waar is het bewijs? Waar zijn de gegevens?
Hoe zit het met dit… Laat me wat gegevens met je delen.
Volgens CVE Details (de ultieme bron voor beveiligingslekken), heeft ColdFusion slechts een fractie van de beveiligingslekken die andere programmeertalen hebben.
Laat dat even bezinken. En als je me niet gelooft… Hier is de link. Ga je gang en bekijk het. Ik wacht wel.
En weet je wat nog beter is voor ons CF’ers… Die grafiek en analyse gaat terug tot 2006. Dus, voor meer dan een decennium, is ColdFusion consequent het meest veilige web development platform geweest. Zeg wat je wilt. De cijfers liegen niet.
Er is een goede reden voor. Adobe geeft om uw veiligheid. Ze leveren voortdurend nieuwe beveiligingsupdates en patches om ons als CF’ers een stap voor te blijven. En daarvoor moeten we Adobe bedanken.
ColdFusion Auto Security Lockdown
In de release van Adobe ColdFusion 2018 is een zeer krachtige tool geïntroduceerd om onze beveiligingsmogelijkheden te vergroten.
De Auto Lockdown functie.
Elke ontwikkelaar die de moeite waard is, begrijpt het belang van het goed beveiligen van hun systeem. Het kan het verschil zijn tussen leven en dood (van je ColdFusion web apps dus). Dus het is geweldig dat Adobe deze functie heeft vrijgegeven.
Het scant en doorzoekt automatisch de code van je applicatie op bestaande beveiligingslekken en potentiële beveiligingsinbreuken. Het bepaalt de exacte kwetsbare code, het type kwetsbaarheid, en de ernstgraad. Na dit alles presenteert de analyzer u de optie om het probleem te verwijderen en te repareren via aanbevolen middelen.
Maar we moeten ook dank zeggen aan onze gemeenschap. Adobe is niet de enige die voor ons zorgt. Leden van onze eigen gemeenschap ontwikkelen toepassingen van derden om van ons platform iets groters en beters te maken. En als het op beveiliging aankomt… komt er één bedrijf naar voren.
Gerelateerd: Top 5 Beveiligingsproblemen opgelost met Adobe ColdFusion 2018
Foundeo Inc is een onafhankelijke organisatie die zich toelegt op het verhogen van de veiligheid van uw ColdFusion-platform. En ze hebben een aantal ernstige geloofsbrieven. Zie je, de oprichter van het bedrijf is niemand minder dan Pete Freitag. CF’s meest erkende veiligheidsgoeroe. Hij heeft zelfs meegeholpen ColdFusion’s lockdown guides te maken.
En hij heeft een aantal third-party tools gebouwd om onze beveiliging nog verder te verbeteren-het meest in het bijzonder FuseGuard.
FuseGuard is een ColdFusion-specifieke Web Application Firewall (WAF) die bescherming biedt tegen veel voorkomende hacker-exploits.
Volgens de FuseGuard ColdFusion Web Application Firewall Documentatie, werkt FuseGuard als volgt.
- Er komt een verzoek binnen dat via uw Application.cfm of Application.cfc bestand naar de firewall wordt gestuurd.
- De firewall voert elk filter uit dat u hebt geconfigureerd, en het filter geeft een dreigingsniveau van 0-10 terug (10 is het gevaarlijkst).
- Als een filter een dreigingsniveau oplevert dat hoger is dan of gelijk is aan het door u geconfigureerde blokkeringsniveau, wordt het verzoek geblokkeerd en worden de resterende filters niet uitgevoerd.
- Als een filter een dreigingsniveau oplevert dat hoger is dan of gelijk is aan het door u geconfigureerde logniveau, wordt het verzoek gelogd.
- U kunt uw eigen aangepaste logger schrijven of een van de loggers gebruiken die bij het product zijn geleverd.
- Als een filter een dreigingsniveau oplevert dat hoger is dan of gelijk is aan het door u geconfigureerde filterniveau, wordt het verzoek gefilterd, wat betekent dat we kwaadaardige tekens proberen te ontsnappen of te verwijderen. Niet alle filters ondersteunen deze operatie.
- Als het verzoek succesvol door alle filters komt, wordt het verzoek toegestaan om door te gaan naar uw applicatie.
Eenvoudige feiten waarom ColdFusion de meest veilige web taal is
Hey CFers, Ik ben bezig om te bewijzen dat ColdFusion de meest veilige is (was en nog steeds is…) Vs. andere programmeertalen. Hier is iets wat ik onlangs vond
ColdFusion Vs. PHP ColdFusion Vs. Oracle JRE ColdFusion Vs. Apache Tomcat ColdFusion Vs. Ruby on Rails ColdFusion Vs. Microsoft .net Framework
CVE-details geven het aantal kritieke kwetsbaarheden aan. In vergelijking met andere talen.
- 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 Redenen waarom Adobe ColdFusion beter is dan C#
Lees meer: Gratis programmeerboeken
Wat maakt Adobe ColdFusion zo speciaal?
Na 23 jaar en honderden – zo niet duizenden – actieve programmeertalen, waarom is Adobe ColdFusion nog steeds springlevend?
Het geheim daarvan ligt verborgen in de officiële taal zelf en de syntax.
CFML is een op tags gebaseerde taal als geen andere. Het gebruiksgemak en de uitgebreide functionaliteit maken het tot een topcompetent voor elke ontwikkelaar.
En in de moderne tijd van vandaag doet ColdFusion iets beter dan welke andere taal dan ook.
Veiligheid.
In vergelijking met andere programmeertalen, komt Adobe ColdFusion over als een waar digitaal fort. Met verbazingwekkende ingebouwde beveiligingsmogelijkheden en experts zoals Pete Freitag die de leiding nemen, zal Adobe ColdFusion 2018 (met 2020 uit te komen dit jaar) blijven ongeëvenaard op dit gebied.
Ga met me mee als we een kijkje nemen in de wortels van ColdFusion en waag je verder in wat het zo speciaal maakt.
“Ik hou van de taal. Het was de eerste taal die ik leerde… mijn vriend zei, ‘Nou, weet je er is deze taal genaamd ColdFusion die een cfquery tag, een cfoutput tag, en een cfmail tag heeft,’ en ik was verliefd. Dat is de waarheid. Ik heb in de loop der jaren in andere talen gewerkt en hoewel ik ze allemaal leuk vind, wanneer ik een echt snel idee moet uitwerken, lijkt ColdFusion het gewoon heel eenvoudig te maken om te doen.”
-Giancarlo Gomez, Eigenaar van CrossTrackr, Inc en Fuse Developments, Inc / Senior Web App Developer bij Duty-Free Americas
De evolutie van ColdFusion
Tijden waren toen eenvoudiger.
Windows 95 was net uitgekomen en haalde ons uit het tijdperk van de “echte” Windows in 3.1. De DVD kwam op het toneel, klaar om het op te nemen tegen de wereld en nog belangrijker tegen VHS. En Michael Jordan kwam uit zijn pensioen om de Bulls naar nog eens 3 kampioenschappen te leiden.
Maar het belangrijkste was dat twee broers aan tafel gingen zitten om een gemakkelijkere manier te ontwikkelen om het World Wide Web te veroveren. De ene was een ambitieuze CEO die klaar was om zich te ontwikkelen en de andere een ontluikende software ingenieur met schijnbaar grenzeloos potentieel. Dit waren de gebroeders Allaire.
Jeremy was eigenaar van een adviesbureau voor webontwikkeling en had veel goede ideeën over hoe webdiensten konden worden gebouwd. Maar hij vond de huidige technologie te omslachtig en moeilijk om mee te werken. Dit is waar de expertise van zijn broer in het spel kwam. JJ wist dat hij Jeremy’s moeilijkheden kon oplossen. Hij hoefde alleen maar zijn eigen systeem te ontwikkelen. Eentje dat niet alleen zijn broer kon gebruiken, maar iets dat iedereen kon.
En zo… De eerste versie van ColdFusion was geboren.
*Fun Fact #1: Wist je dat ColdFusion niet de eerste keus was voor de naam? Eerdere kanshebbers waren Horizon, WebDB, en Prometheus. Prometheus was de koploper met zijn logo bestaande uit een hand en een bliksemschicht.
Vóór ColdFusion 6.0, werd CF geschreven in Microsoft Visual C++. Hierdoor was het bijna uitsluitend beschikbaar voor Windows-gebruikers. Maar tijdens de 3.1 update, was Allaire in staat om ColdFusion met succes over te zetten naar Sun Solaris, waardoor de toegankelijkheid voor gebruikers verder toenam.
In 2001 hielp Jeremy bij de fusie tussen Allaire en de mediagigant Macromedia. Hij werd uiteindelijk de CTO van Macromedia en hielp het Flash programma te leiden. Maar dat betekent niet dat ColdFusion aan de kant werd geschoven. In feite brachten ze ColdFusion naar het volgende niveau.
Tijdens de productie van ColdFusion 6.0, voerde Macromedia een drastische verandering door. 6.0 was volledig herschreven in Java en ondersteunde zijn eigen runtime. En met 6.1 kwam een van de grootste veranderingen voor ColdFusion. Het stelde zijn gebruikers in staat om Shockwave Flash te debuggen en te coderen.
Macromedia deed wonderen voor het platform door ColdFusion te ontwikkelen tot een echte mededinger in de wereld van web-ontwikkeling. Echter, een rivaliserend bedrijf was langzaam de industrie aan het domineren. Eind 2005 nam Adobe Systems Macromedia en ColdFusion over. In plaats van het platform te verwerpen, investeerde Adobe er tijd en middelen in. Vanaf nu is Adobe ColdFusion één van de meest gebruiksvriendelijke en efficiënte programmeringsarena’s beschikbaar. De nieuwste versie is Adobe ColdFusion 2018.
CFML: A Developer’s Language
Misschien ligt het sterkste element aan ColdFusion in de taal zelf.
CFML.
Het staat voor Cold Fusion Markup Language en leidt ons naar ons volgende fun fact…
*Fun Fact #2: Wist je dat CFML per definitie geen echte markup taal is. Het is eigenlijk meer een scripttaal! Maar meer nog… Sommigen beschouwen ColdFusion als een soort “lijmtaal” – een subset van scripttalen die helpt om verschillende softwarecomponenten met elkaar te verbinden.
Maar dat wil niet zeggen dat CFML en markup talen geen overeenkomsten hebben.
Adobe ColdFusion in een notendop
Wat begon als een eenvoudige oplossing voor een broers raadsel, ontwikkelde zich tot een superieur webontwikkelingsplatform dat over de hele wereld wordt gebruikt. Het gebruiksgemak als een tag gebaseerde scripting taal maakt het ideaal voor elke ontwikkelaar, beginner of veteraan. Niet alleen dat, maar je zult geen andere taal vinden die zo veilig is.
Dit zijn slechts enkele redenen waarom ColdFusion de beste is die er is. Later zullen we verkennen een aantal directe vergelijkingen tussen ColdFusion en enkele andere programmeertalen, zodat we kunnen hameren op dit punt.
Maar het zit zo… Niets is perfect. Ondanks Adobe’s beste inspanningen, hebben ze geen perfect product gemaakt. Maar dit is waarom ze het platform constant verbeteren. En raad eens hoe ze aan de meeste ideeën komen?
Ze luisteren naar de community. (Een dikke shoutout naar Adobe voor dat, BTW) Ze nemen onze ideeën en zetten ze om in een realiteit. Dus als je één ding zou kunnen veranderen aan Adobe ColdFusion, wat zou het dan zijn? Laat het ons weten in de commentaren hieronder. Of beter nog… Spreek ze uit op de Adobe forums of het CF Slack kanaal.
Laten we allemaal samenkomen en ons steentje bijdragen om CF levendig, modern en ALIVE te houden!!!
Doe mee aan de CF Alive revolutie
Ontdek hoe we CF dit jaar levendiger, moderner en veiliger kunnen maken. Sluit je vandaag nog aan bij andere ColdFusion-ontwikkelaars en -beheerders in de CF Alive Inner Circle.
- Toegang tot het CF Alive-boek en de video’s
- Maak deel uit van een nieuwe beweging om de perceptie van CF in de wereld te verbeteren.
- Draag bij aan de CF Alive-revolutie
- Maak contact met andere CF-ontwikkelaars en -managers
- Er zijn geen kosten verbonden aan het lidmaatschap.