SlideShare una empresa de Scribd logo
1 de 32
Michel Schwandner, Patrick Havel, Francis Oloo
Fundamentals and Concepts of Software Engineering-Winter 2012/13
 1. Scripting languages
 2. PHP
 3. Python
 4. Perl
 5. Comparison
 Definition:
Scripting languages, which can be embedded within
HTML, commonly are used to add functionality to a Web page, such
as different menu styles or graphic displays or to serve dynamic
advertisements. These types of languages are client-side scripting
languages, affecting the data that the end user sees in a browser
window. Other scripting languages are server-side scripting
languages that manipulate the data, usually in a database, on the
server.
(from: http://www.webopedia.com/TERM/S/scripting_language.html)
 Characteristics:
 implicit declared variables
▪ dynamic typecast
▪ valid for functions too
 automatic memory management
 Interpreted code
 fields of application:
 command-line interpreters
▪ sh
▪ cmd
 Scripting languages in internet applications
▪ PHP
▪ Perl
▪ Python
 fields of application:
 Scripting languages in program library
▪ VBScript
▪ JScript
 Scripting languages in programs
▪ QuakeC
▪ UnrealScript
 comparison with programming languages
Scripting languages Programming languages
Interpreter Compiler
mostly imperative programming
paradigm
mostly object orientated programming
paradigm
slowly -> code interpretation during
runtime
very fast runtime
automatic memory management memory management (pointer
technique (C, C++))
typeless strict type handling
 introductory and historical aspects
 development began in 1994
 started with a set of Perl scripts calling "Personal
Home PageTools“
 free software released under the PHP License
 almost 80% of the web pages using PHP
 final version 6 will publish soon
 Characteristics:
 own scripting language with its own interpreter
 close to C or Java syntax
 support of object orientated approach
 extensive function library
 Characteristics:
 server-side
scripting language
 embedded into an
HTML source document or
in a proper PHP file
 Fields of application:
 originally designed forWeb development
 Database connection
 HTML forms
 Dynamic generation of graphs and file upload
 most famous application is the LAMP
Pros Cons
easy to learn -> close to C, java and
human languages
no byte code cache
a lot of fields of applications procedural programming in object
orientated library
separation of code and layout weak typecast
feature rich security problem
Free interpreted language -> slow runtime
browser independency automatic memory management
useable on each OS
young language
 Examples:
 embedded in HTML Code
▪ <script language="php"> ... </script>
▪ file extension .html
 own PHP document
▪ <?PHP .... ?>
▪ <? .... ?>
▪ file extension .php
 Code examples:
 Introduction and History
 Python from Monty Python Python fun to use
 1989: implementation by Guido van Rossum
(Netherlands)
 1991: appearance
 2000: version 2.0
 2008: version 3.0 (backwards incompatible)
 2007/2010:TIOBE Programming Language of theYear Award
 actual versions:
▪ 3.3.0 (sept. 2012)
▪ 2.7.3 (april 2012)
 Characteristics
 language integration: C, C++, Java
 full modularising
 standard libraries for GIS, databases, important
internet protocols, mathematics, statistics, …
 Block structures
 everything is an object
 Multi-paradigm language: object-oriented style,
the traditional procedural style or a mix of those
Pro Cons
easy to learn no special syntax to distinguish methods
and functions (methods -> self)
clean and elegant design not as fast as C or C++
include high-level data types script length
easily build GUI (Tkinter) Slow run-time
exception handling Version 3.0: downward incompatibility
well-established development
community and a central Web site
(Python tools and extension modules)
large standard library
open source
for many platforms
(Unix,Windows, Mac OS X,…)
 Applications
 Web applications (Apache web server)
 Scientific: NumPy, SciPy, Matplotlib,ArcPy
 3D animation packages (Blender, Cinema 4D…)
 GIS-Software:ArcGIS , Quantum GIS,Grass GIS,
etc.
 Others:Youtube, BitTorrent, Google, NASA,
CERN,…
Example 1:
Example 2:
 Perl : Practical Extraction and Reporting Language
 Originally developed by LarryWall in 1987
 An interpreted language: does not need to be
compiled as separate step
 Perl programs are text files run through an
interpreter
 Current version 5.16.2
 Characteristics
 Can run both onWindows and UNIX/Linux
 InWindows can be run through the Command line
editor
 You need to define the location of Perl Script
 The version can be stated within the script
 Typical applications
 Text processing
 System administration: tying smaller scripts, working with file
systems and networking
 Web programming: Used to process and generate HTML
 Database interaction
 Mail processing: automated processing of internet emails including
filtering by address and content
 Automating file retrieval via FTP
 Applications in geoinformatics
 A number of modules exist at CPAN for handling
geographic data, GPS
http://www.cpan.org/modules/01modules.index.html
 Can be used for constructing GIS tools for
handling and editing geocoded data on a map
http://www.isprs.org/proceedings/xxxv/congress/yf/papers/934.pdf
Pros Cons
Portable Poor documentation/ Informal support,
mainly through volunteers
Very dense code thus saving on coding
time
Is an interpreted language, therefore not
as fast
Good with text handling Protecting proprietary code; not
compiled thus can only distributed as
codes
Backward compatibility Maintainability of scripts
Very flexible
Massive library of reusable codes
•The program should be saved as a .pl format
 Hash:Two dimensional arrays with keys and
values e.g
criteria Python PHP Perl
object oriented
programing
simple but
effective approach
 downright easy
weak -> most of the of
approaches aren’t
implemented
providesOOP features
of data encapsulation
and inheritance using
modules and packages
runtime Worst of these
three
relatively fast in procedural
approach
Very good speeds
especially for test
processing
modularity Full modularising store repeated code in
separated functions
Full modularising
through modules and
packages
code length Depending on
application, but
over all worse
different possibilities how
to write the code
Highly optimized
security modules and
“community” for
security
not that safe (include, user
interactions)
User input vulnerability
Many thanks
-
Comments??

Más contenido relacionado

La actualidad más candente

Unit 1-introduction to scripts
Unit 1-introduction to scriptsUnit 1-introduction to scripts
Unit 1-introduction to scriptssana mateen
 
Server and Client side comparision
Server and Client side comparisionServer and Client side comparision
Server and Client side comparisionStew Duncan
 
Client side &amp; Server side Scripting
Client side &amp; Server side Scripting Client side &amp; Server side Scripting
Client side &amp; Server side Scripting Webtech Learning
 
Web programming by kiran and team
Web programming by kiran and teamWeb programming by kiran and team
Web programming by kiran and teamHemanth Kumar N
 
The Importance Things of Full Stack Development
The Importance Things of Full Stack DevelopmentThe Importance Things of Full Stack Development
The Importance Things of Full Stack DevelopmentMike Taylor
 
Introduction to PHP Part-I
Introduction to PHP Part-IIntroduction to PHP Part-I
Introduction to PHP Part-ISidrah Noor
 
Concepts of Asp.Net
Concepts of Asp.NetConcepts of Asp.Net
Concepts of Asp.Netvidyamittal
 
REPORT ON ASP.NET
REPORT ON ASP.NETREPORT ON ASP.NET
REPORT ON ASP.NETLOKESH
 
Nagarjuna Reddy_Java (1+ Experience)
Nagarjuna Reddy_Java (1+ Experience)Nagarjuna Reddy_Java (1+ Experience)
Nagarjuna Reddy_Java (1+ Experience)Nagarjun Reddy
 
Web Development Today
Web Development TodayWeb Development Today
Web Development Todaybretticus
 

La actualidad más candente (19)

Client and server side scripting
Client and server side scriptingClient and server side scripting
Client and server side scripting
 
Unit 1-introduction to scripts
Unit 1-introduction to scriptsUnit 1-introduction to scripts
Unit 1-introduction to scripts
 
Server and Client side comparision
Server and Client side comparisionServer and Client side comparision
Server and Client side comparision
 
Client side scripting and server side scripting
Client side scripting and server side scriptingClient side scripting and server side scripting
Client side scripting and server side scripting
 
Client side and server side scripting
Client side and server side scriptingClient side and server side scripting
Client side and server side scripting
 
Client side &amp; Server side Scripting
Client side &amp; Server side Scripting Client side &amp; Server side Scripting
Client side &amp; Server side Scripting
 
Web programming by kiran and team
Web programming by kiran and teamWeb programming by kiran and team
Web programming by kiran and team
 
Client side scripting and server side scripting
Client side scripting and server side scriptingClient side scripting and server side scripting
Client side scripting and server side scripting
 
The Importance Things of Full Stack Development
The Importance Things of Full Stack DevelopmentThe Importance Things of Full Stack Development
The Importance Things of Full Stack Development
 
Introduction to Java Scripting
Introduction to Java ScriptingIntroduction to Java Scripting
Introduction to Java Scripting
 
Introduction to PHP Part-I
Introduction to PHP Part-IIntroduction to PHP Part-I
Introduction to PHP Part-I
 
Concepts of Asp.Net
Concepts of Asp.NetConcepts of Asp.Net
Concepts of Asp.Net
 
REPORT ON ASP.NET
REPORT ON ASP.NETREPORT ON ASP.NET
REPORT ON ASP.NET
 
Backend Programming
Backend ProgrammingBackend Programming
Backend Programming
 
Chapter1
Chapter1Chapter1
Chapter1
 
Nagarjuna Reddy_Java (1+ Experience)
Nagarjuna Reddy_Java (1+ Experience)Nagarjuna Reddy_Java (1+ Experience)
Nagarjuna Reddy_Java (1+ Experience)
 
What is asp
What is aspWhat is asp
What is asp
 
Cgi perl
Cgi  perlCgi  perl
Cgi perl
 
Web Development Today
Web Development TodayWeb Development Today
Web Development Today
 

Destacado

Cartography student project_oloobasirhaufe
Cartography student project_oloobasirhaufeCartography student project_oloobasirhaufe
Cartography student project_oloobasirhaufeoloofrank
 
Gi science discipline_foloo
Gi science discipline_folooGi science discipline_foloo
Gi science discipline_foloooloofrank
 
Project Ideas
Project IdeasProject Ideas
Project Ideasoloofrank
 
Gis project final_presentation
Gis project final_presentationGis project final_presentation
Gis project final_presentationoloofrank
 
D Solar Energy Review Pranay 1
D Solar Energy Review Pranay 1D Solar Energy Review Pranay 1
D Solar Energy Review Pranay 1Pranay Kumar
 
Sam Baldwin | CSP, PV and a Renewable Future
Sam Baldwin | CSP, PV and a Renewable FutureSam Baldwin | CSP, PV and a Renewable Future
Sam Baldwin | CSP, PV and a Renewable FutureGW Solar Institute
 
Application of water evaluation and planning (WEAP)
Application of water evaluation and planning (WEAP)Application of water evaluation and planning (WEAP)
Application of water evaluation and planning (WEAP)oloofrank
 
A Business Model for Solar Energy - SunEdison
A Business Model for Solar Energy - SunEdisonA Business Model for Solar Energy - SunEdison
A Business Model for Solar Energy - SunEdisonAlexander Osterwalder
 
Project Proposal on 10 MW Solar PV Power Plant
Project Proposal on 10 MW Solar PV Power PlantProject Proposal on 10 MW Solar PV Power Plant
Project Proposal on 10 MW Solar PV Power PlantVignesh Sekar
 

Destacado (9)

Cartography student project_oloobasirhaufe
Cartography student project_oloobasirhaufeCartography student project_oloobasirhaufe
Cartography student project_oloobasirhaufe
 
Gi science discipline_foloo
Gi science discipline_folooGi science discipline_foloo
Gi science discipline_foloo
 
Project Ideas
Project IdeasProject Ideas
Project Ideas
 
Gis project final_presentation
Gis project final_presentationGis project final_presentation
Gis project final_presentation
 
D Solar Energy Review Pranay 1
D Solar Energy Review Pranay 1D Solar Energy Review Pranay 1
D Solar Energy Review Pranay 1
 
Sam Baldwin | CSP, PV and a Renewable Future
Sam Baldwin | CSP, PV and a Renewable FutureSam Baldwin | CSP, PV and a Renewable Future
Sam Baldwin | CSP, PV and a Renewable Future
 
Application of water evaluation and planning (WEAP)
Application of water evaluation and planning (WEAP)Application of water evaluation and planning (WEAP)
Application of water evaluation and planning (WEAP)
 
A Business Model for Solar Energy - SunEdison
A Business Model for Solar Energy - SunEdisonA Business Model for Solar Energy - SunEdison
A Business Model for Solar Energy - SunEdison
 
Project Proposal on 10 MW Solar PV Power Plant
Project Proposal on 10 MW Solar PV Power PlantProject Proposal on 10 MW Solar PV Power Plant
Project Proposal on 10 MW Solar PV Power Plant
 

Similar a Scripting languages presentation_michel_patrickfrancis

Class 17-18 Introduction to Perl.pdf bbbbbb
Class 17-18 Introduction to Perl.pdf bbbbbbClass 17-18 Introduction to Perl.pdf bbbbbb
Class 17-18 Introduction to Perl.pdf bbbbbb21h51a0581
 
Top 10 programming languages
Top 10 programming languagesTop 10 programming languages
Top 10 programming languagesAman Kumar
 
Python | What is Python | History of Python | Python Tutorial
Python | What is Python | History of Python | Python TutorialPython | What is Python | History of Python | Python Tutorial
Python | What is Python | History of Python | Python TutorialQA TrainingHub
 
Unit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptxUnit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptxAsst.prof M.Gokilavani
 
Web technologies lecture 01
Web technologies lecture 01Web technologies lecture 01
Web technologies lecture 01HemantAlhat1
 
Top programming Languages in software Industry companies
Top programming Languages in software Industry companiesTop programming Languages in software Industry companies
Top programming Languages in software Industry companiesKiran Patil
 
Is Python a Programming language or Scripting Language_.pdf
Is Python a Programming language or Scripting Language_.pdfIs Python a Programming language or Scripting Language_.pdf
Is Python a Programming language or Scripting Language_.pdfKajal Digital
 
Is Python a Programming language or Scripting Language.pdf
Is Python a Programming language or Scripting Language.pdfIs Python a Programming language or Scripting Language.pdf
Is Python a Programming language or Scripting Language.pdfKajal Digital
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020Ikbal Ahmed
 
UNIT-2web technologybchelor .pptx
UNIT-2web technologybchelor        .pptxUNIT-2web technologybchelor        .pptx
UNIT-2web technologybchelor .pptxnidhidube10
 
Generation of Computer language by arya dutta (1).pptx
Generation of Computer language by arya dutta (1).pptxGeneration of Computer language by arya dutta (1).pptx
Generation of Computer language by arya dutta (1).pptxAryaDutta4
 
Python develoopment company for custom applications development with a wealth...
Python develoopment company for custom applications development with a wealth...Python develoopment company for custom applications development with a wealth...
Python develoopment company for custom applications development with a wealth...Flexsin
 
Python-00 | Introduction and installing
Python-00 | Introduction and installingPython-00 | Introduction and installing
Python-00 | Introduction and installingMohd Sajjad
 

Similar a Scripting languages presentation_michel_patrickfrancis (20)

Programming language
Programming languageProgramming language
Programming language
 
Class 17-18 Introduction to Perl.pdf bbbbbb
Class 17-18 Introduction to Perl.pdf bbbbbbClass 17-18 Introduction to Perl.pdf bbbbbb
Class 17-18 Introduction to Perl.pdf bbbbbb
 
Top 10 programming languages
Top 10 programming languagesTop 10 programming languages
Top 10 programming languages
 
Python | What is Python | History of Python | Python Tutorial
Python | What is Python | History of Python | Python TutorialPython | What is Python | History of Python | Python Tutorial
Python | What is Python | History of Python | Python Tutorial
 
Unit 1
Unit 1Unit 1
Unit 1
 
PHP Basics
PHP BasicsPHP Basics
PHP Basics
 
Php ppt
Php pptPhp ppt
Php ppt
 
Unit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptxUnit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptx
 
Programming language
Programming languageProgramming language
Programming language
 
Web technologies lecture 01
Web technologies lecture 01Web technologies lecture 01
Web technologies lecture 01
 
Top programming Languages in software Industry companies
Top programming Languages in software Industry companiesTop programming Languages in software Industry companies
Top programming Languages in software Industry companies
 
Is Python a Programming language or Scripting Language_.pdf
Is Python a Programming language or Scripting Language_.pdfIs Python a Programming language or Scripting Language_.pdf
Is Python a Programming language or Scripting Language_.pdf
 
Software (1)
Software (1)Software (1)
Software (1)
 
Is Python a Programming language or Scripting Language.pdf
Is Python a Programming language or Scripting Language.pdfIs Python a Programming language or Scripting Language.pdf
Is Python a Programming language or Scripting Language.pdf
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020
 
UNIT-2web technologybchelor .pptx
UNIT-2web technologybchelor        .pptxUNIT-2web technologybchelor        .pptx
UNIT-2web technologybchelor .pptx
 
Generation of Computer language by arya dutta (1).pptx
Generation of Computer language by arya dutta (1).pptxGeneration of Computer language by arya dutta (1).pptx
Generation of Computer language by arya dutta (1).pptx
 
Python develoopment company for custom applications development with a wealth...
Python develoopment company for custom applications development with a wealth...Python develoopment company for custom applications development with a wealth...
Python develoopment company for custom applications development with a wealth...
 
Python-00 | Introduction and installing
Python-00 | Introduction and installingPython-00 | Introduction and installing
Python-00 | Introduction and installing
 
Managing software assets
Managing software assetsManaging software assets
Managing software assets
 

Último

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Último (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

Scripting languages presentation_michel_patrickfrancis

  • 1. Michel Schwandner, Patrick Havel, Francis Oloo Fundamentals and Concepts of Software Engineering-Winter 2012/13
  • 2.  1. Scripting languages  2. PHP  3. Python  4. Perl  5. Comparison
  • 3.  Definition: Scripting languages, which can be embedded within HTML, commonly are used to add functionality to a Web page, such as different menu styles or graphic displays or to serve dynamic advertisements. These types of languages are client-side scripting languages, affecting the data that the end user sees in a browser window. Other scripting languages are server-side scripting languages that manipulate the data, usually in a database, on the server. (from: http://www.webopedia.com/TERM/S/scripting_language.html)
  • 4.  Characteristics:  implicit declared variables ▪ dynamic typecast ▪ valid for functions too  automatic memory management  Interpreted code
  • 5.  fields of application:  command-line interpreters ▪ sh ▪ cmd  Scripting languages in internet applications ▪ PHP ▪ Perl ▪ Python
  • 6.  fields of application:  Scripting languages in program library ▪ VBScript ▪ JScript  Scripting languages in programs ▪ QuakeC ▪ UnrealScript
  • 7.  comparison with programming languages Scripting languages Programming languages Interpreter Compiler mostly imperative programming paradigm mostly object orientated programming paradigm slowly -> code interpretation during runtime very fast runtime automatic memory management memory management (pointer technique (C, C++)) typeless strict type handling
  • 8.
  • 9.  introductory and historical aspects  development began in 1994  started with a set of Perl scripts calling "Personal Home PageTools“  free software released under the PHP License  almost 80% of the web pages using PHP  final version 6 will publish soon
  • 10.  Characteristics:  own scripting language with its own interpreter  close to C or Java syntax  support of object orientated approach  extensive function library
  • 11.  Characteristics:  server-side scripting language  embedded into an HTML source document or in a proper PHP file
  • 12.  Fields of application:  originally designed forWeb development  Database connection  HTML forms  Dynamic generation of graphs and file upload  most famous application is the LAMP
  • 13. Pros Cons easy to learn -> close to C, java and human languages no byte code cache a lot of fields of applications procedural programming in object orientated library separation of code and layout weak typecast feature rich security problem Free interpreted language -> slow runtime browser independency automatic memory management useable on each OS young language
  • 14.  Examples:  embedded in HTML Code ▪ <script language="php"> ... </script> ▪ file extension .html  own PHP document ▪ <?PHP .... ?> ▪ <? .... ?> ▪ file extension .php
  • 16.
  • 17.  Introduction and History  Python from Monty Python Python fun to use  1989: implementation by Guido van Rossum (Netherlands)  1991: appearance  2000: version 2.0  2008: version 3.0 (backwards incompatible)  2007/2010:TIOBE Programming Language of theYear Award  actual versions: ▪ 3.3.0 (sept. 2012) ▪ 2.7.3 (april 2012)
  • 18.  Characteristics  language integration: C, C++, Java  full modularising  standard libraries for GIS, databases, important internet protocols, mathematics, statistics, …  Block structures  everything is an object  Multi-paradigm language: object-oriented style, the traditional procedural style or a mix of those
  • 19. Pro Cons easy to learn no special syntax to distinguish methods and functions (methods -> self) clean and elegant design not as fast as C or C++ include high-level data types script length easily build GUI (Tkinter) Slow run-time exception handling Version 3.0: downward incompatibility well-established development community and a central Web site (Python tools and extension modules) large standard library open source for many platforms (Unix,Windows, Mac OS X,…)
  • 20.  Applications  Web applications (Apache web server)  Scientific: NumPy, SciPy, Matplotlib,ArcPy  3D animation packages (Blender, Cinema 4D…)  GIS-Software:ArcGIS , Quantum GIS,Grass GIS, etc.  Others:Youtube, BitTorrent, Google, NASA, CERN,…
  • 22.
  • 23.
  • 24.  Perl : Practical Extraction and Reporting Language  Originally developed by LarryWall in 1987  An interpreted language: does not need to be compiled as separate step  Perl programs are text files run through an interpreter  Current version 5.16.2
  • 25.  Characteristics  Can run both onWindows and UNIX/Linux  InWindows can be run through the Command line editor  You need to define the location of Perl Script  The version can be stated within the script
  • 26.  Typical applications  Text processing  System administration: tying smaller scripts, working with file systems and networking  Web programming: Used to process and generate HTML  Database interaction  Mail processing: automated processing of internet emails including filtering by address and content  Automating file retrieval via FTP
  • 27.  Applications in geoinformatics  A number of modules exist at CPAN for handling geographic data, GPS http://www.cpan.org/modules/01modules.index.html  Can be used for constructing GIS tools for handling and editing geocoded data on a map http://www.isprs.org/proceedings/xxxv/congress/yf/papers/934.pdf
  • 28. Pros Cons Portable Poor documentation/ Informal support, mainly through volunteers Very dense code thus saving on coding time Is an interpreted language, therefore not as fast Good with text handling Protecting proprietary code; not compiled thus can only distributed as codes Backward compatibility Maintainability of scripts Very flexible Massive library of reusable codes
  • 29. •The program should be saved as a .pl format
  • 30.  Hash:Two dimensional arrays with keys and values e.g
  • 31. criteria Python PHP Perl object oriented programing simple but effective approach  downright easy weak -> most of the of approaches aren’t implemented providesOOP features of data encapsulation and inheritance using modules and packages runtime Worst of these three relatively fast in procedural approach Very good speeds especially for test processing modularity Full modularising store repeated code in separated functions Full modularising through modules and packages code length Depending on application, but over all worse different possibilities how to write the code Highly optimized security modules and “community” for security not that safe (include, user interactions) User input vulnerability