Kurs Komputerowy Java

Total Page:16

File Type:pdf, Size:1020Kb

Kurs Komputerowy Java Kurs Komputerowy Java http://www.fizyka.umk.pl/~piotra/dydaktyka/Java Piotr Ablewski Katedra Informatyki Stosowanej Instytut Nauk Technicznych Wydział Fizyki Astronomii i Informatyki Stosowanej Uniwersytet Mikołaja Kopernika w Toruniu mgr inż. Piotr Ablewski www.fizyka.umk.pl/~piotra e-mail: piotra@fizyka.umk.pl lub [email protected] Discord: https://discord.gg/84yCUWz ← kurs_komputerowy_java Telegram: https://t.me/PiotrA_KIS_UMK Konsultacje: środa 12:00 - 14:00 lub w dowolnym umówionym mailowo terminie - jestem dostępny od poniedziałku do piątku od 12:00 do 20:00, za wyjątkiem czasu, gdy prowadzę zajęcia. Gdzie mnie szukać: pokój 571 (na przeciwko wejścia do PK1 i PK2) Zasady zaliczenia przedmiotu ● Obowiązkowa obecność na laboratoriach - dopuszczalne dwie nieobecności nieusprawiedliwione ● Na ostateczną ocenę składa się: ○ Kolokwium - 30% wkładu do oceny [termin zostanie ustalony] ○ Projekt zaliczeniowy - 40% wkładu do oceny [tematy zostaną podane w ok. ¾ zajęć] ○ Praca na zajęciach - 30% wkładu do oceny [bieżąca praca polegająca na realizacji zadań] ● W ramach zajęć można otrzymać łącznie max. 100 pkt., z czego 50 pkt. niezbędnych jest do otrzymania zaliczenia Java początki prac: 1991 r. pierwsze informacje: 1995 r. pierwsza wersja dostępna publicznie: 1996 r. Twórca: James Gosling @ Sun Microsystems (współpraca: Mike Sheridan, i Patrick Naughton) Project Green -> Oak -> Java Obecnie Java rozwijana jest przez firmę Oracle (w 2010 roku Sun został przejęty przez Oracle) Założenia twórców 1) Język w pełni obiektowy, tak dobry i szybki jak C++, ale dużo łatwiejszy w wytwarzaniu oprogramowania 2) Write once, run anywhere - maszyna wirtualna 3) Uniwersalny język ogólnego przeznaczenia Założenia twórców 1) Język w pełni obiektowy, tak dobry i szybki jak C++, ale dużo łatwiejszy w wytwarzaniu oprogramowania i o bardziej klarownej składni 2) Write once, run anywhere - maszyna wirtualna 3) Uniwersalny język ogólnego przeznaczenia Zastosowanie 1) Odbiorniki telewizyjne 2) Aplikacje okienkowe 3) Aplikacje mobilne (JavaME - Siemens, Nokia, Sony Ericsson, Android) 4) Aplikacje webowe 5) Aplikacje serwerowe 6) Programowanie sieciowo-komunikacyjne 7) Dydaktyka sieci komputerowych i systemów operacyjnych ( olbrzymie wsparcie Sun’a a następnie Oracle’a) Siemens SL45i - pierwszy telefon obsługujący Java ME Java, JVM, JRE, Java ME, Java EE - o co chodzi? Java - język programowania JVM - Java Virtual Machine - maszyna wirtualna, na której uruchamiać można oprogramowanie napisane w językach: ● Java ● Scala ● Kotlin ● Groovy ● Clojure ● JRuby (Ruby) ● Jython (Python) Java, JVM, JRE, Java ME, Java EE - o co chodzi? Platformy Java: ● Java Standard Edition (Java SE) - aplikacje uruchamiane w konsoli lub aplikacje okienkowe ● Java Enterprise Edition (Java EE) - aplikacje serwerowe ● Java Micro Edition (Java ME) - aplikacje mobilne lub działające na urządzeniach o niskiej wydajności ● Java FX - aplikacje RIA (rich internet applications) oraz aplikacje okienkowe ● Java Card - mikro aplikacje uruchamiane na kartach elektronicznych Platforma Java to zbiór bibliotek i narzędzi umożliwiających lub ułatwiających tworzenie oprogramowania dla konkretnych zastosowań. Java, JVM, JRE, Java ME, Java EE - o co chodzi? JRE - Java Runtime Environment - środowisko uruchomieniowe dla aplikacji napisanych w języku Java, na które składa się JVM + podstawowe klasy pomocnicze (minimum do uruchomienia programu w Javie). JDK - Java Development Kit - darmowe oprogramowanie udostępniające środowisko niezbędne do programowania w języku Java, składające się z : ● javac – kompilatora ● jar – archiwizatora ● javadoc – generatora dokumentacji ● javah – generatora plików nagłówkowych ● javap – deasemblera ● jdb – debuggera Skąd i co pobrać JRE: https://www.java.com/pl/download/ JDK + Docs: https://www.oracle.com/java/technologies/javase-downloads.html Implementacje Java i biblioteki ● OpenJDK: 2006 - 2014 @ GNU GPL ● HotSpot (JRE): 1999 - obecnie, od 2006 r. @ GNU GPL ● KVM: Kilobyte Virtual Machine stworzona dla urządzeń wyposażonych w procesory 16- i 32-bitowe, pracujące z częstotliwością 12 - 60 MHz, oraz min. 128 kB pamięci RAM ● Kaffe ● Apache, IBM, RedHat Foundation itp. Zainteresowanym polecam zajrzeć tutaj: https://en.wikipedia.org/wiki/List_of_Java_virtual_machines IDE - Netbeans IDE - Eclipse IDE - IntelliJ IDEA IDE - Visual Studio Code IDE - VIM lub Emacs lub Nano/Pico lub mcedit Kolejna mała wojenka... Zajęcia 3. Mechanizmy programowania obiektowego Definicja klasy Complex.java Definicja paczki package com.UMK; public class Complex Nazwa klasy { private double re; private double im; Pola klasy public Complex() { Konstruktor this.re = 0.0; this.im = 0.0; } Metody klasy public Complex(double re, double im) { this.re = re; this.im = im; } ... } Instancjonowanie klasy Main.java package com.UMK; public class Main { public static void main(String[] args) Klasa - definicja, jak wyglądać ma { obiekt // poprzez ładowanie klasy Class klasa_complex = Class.forName("Complex"); Complex a = klasa_complex.newInstance(); Obiekt - instancja klasy; niezależny byt klasy, mający przypisane swoje // poprzez new miejsce w pamięci Complex z = new Complex(); } } Modyfikatory dostępu 1. public - klasa, pole lub metoda jest dostępna publicznie 2. private - pola i metody nie są widoczne poza klasą, klasa prywatna nie jest widziana poza modułem, w którym jest zdefiniowana 3. protected - pola i metody dostępne są dla danej klasy i jej podklas oraz innych klas w tym samym pakiecie; modyfikator nie jest dostępny dla klasy Domyślnie klasy, pola i metody przyjmują modyfikator package private (default) - element widoczny będzie tylko w ramach pakietu, w którym jest zadeklarowany! Modyfikatory dostępu - cel Głównym celem modyfikatorów dostępu jest enkapsulacja (hermetyzacja), czyli ukrycie szczegółów dotyczących implementacji klasy. Dzięki temu ostateczny użytkownik klasy ma dostęp tylko do ściśle określonych funkcjonalności. W przypadku dziedziczenia - można budować skomplikowane relacje między obiektami. Zasady stosowania modyfikatorów dostępu: ● stosowanie jak najbardziej restrykcyjnych modyfikatorów dostępu (w praktyce - pola private, metody public lub private, w zależności od tego, czy użytkownik ma mieć możliwość bezpośredniego wywołania metody, czy też nie) ● tworzenie setterów i/lub getterów dla prywatnych pól, celem ich “odkrywania” Pola klasy - zakres Pola klasy dostępne są wewnątrz obiektu i na zewnątrz (jeśli pozwala na to modyfikator lub mamy zdefiniowany getter). Pola domyślnie nie są współdzielone przez obiekty - każdy obiekt ma swój zestaw pól, którym przypisane są konkretne dla niego wartości. Pola można współdzielić między obiektami tej samej klasy poprzez użycie słówka kluczowego static przy definicji pola, np.: public static int a = 0; Takie pole można wykorzystać np. jako zmienną przechowującą liczbę instancji danego obiektu. Metody statyczne Metoda oznaczona jako static pozwala wywoływać się bez konieczności instancjonowania klasy. Można dzięki temu stworzyć klasę, która pozwalać będzie na wywoływanie z niej funkcji (np. klasa Math nie może być instancjonowana, ale można z niej wołać stałe ( Math.E i Math.PI ) oraz metody zwracające wartości funkcji (np. Math.abs(x) zwróci moduł liczby x, która może być typu int, long, float lub double). Podstawową metodą statyczną jest metoda main, której implementacja wygląda następująco: public static void main(String[] args) { … } Oznacza to, że uruchomienie programu nie jest związane z żadnym obiektem. Na początku mamy tylko główną klasę Main i w ramach metody main(), będącej punktem wejścia programu, implementujemy całą logikę. Nigdzie nie wołamy bezprośrednio konstruktora klasy Main i nie wywołujemy na obiekcie tej klasy metody main(). Klasy statyczne Metody statyczne wykorzystuje się jako substytut zwykłych funkcji, które można wywołać bez konieczności tworzenia obiektu. Bardzo często buduje się klasy statyczne oparte na metodach statycznych, które działają jak wspomniana wcześniej klasa Math. W pełni statyczna klasa nie może dać się instancjonować, a nie można użyć w jej definicji słowa static. Efekt ten uzyskuje się poprzez prywatny konstruktor. Main.java ComplexMath.java package com.UMK; package com.UMK; public class ComplexMath public class Main { { private ComplexMath() { } public static void main(String[] args) { public static double module( Complex z ) Complex x = new Complex(); { ComplexMath.module(x); return Math.sqrt(z.getRe()*z.getRe() + z.getIm()*z.getIm()); } } } } Klasy statyczne - cd W języku Java istnieje jeden przypadek, gdzie do definicji klasy można dodać słowo static - tworzyć można zagnieżdżone klasy statyczne (ang. inner class) - w tym przypadku do ich instancjonowania nie ma potrzeby, aby w pierwszej kolejności instancjonować klasę zewnętrzną. Oczywiście taka klasa wewnętrzna ma dostęp jedynie do statycznych pól i metod klasy zewnętrznej. Jest to kolejny sposób na jeszcze szczelniejszą enkapsulację. Klasa zagnieżdżona statyczna Klasa zagnieżdżona public class Foo { public class Foo { public class Bar{ } public static class Bar{ } } } public class Main { public class Main { public static void main(String[] args) public static void main(String[] args) { { Foo foo = new Foo(); Foo.Bar Bar = new Foo.Bar(); Foo.Bar Bar = new Foo.new Bar(); } } } } Metody statyczne - pułapki Z poziomu metody statycznej nie możemy wywołać metody stricte obiektowej, bo musi być ona związana z konkretną instancją klasy. Aby obejść ten problem, wewnątrz metody statycznej tworzy się instancję klasy i dopiero na stworzonym obiekcie wywołuje się metodę obiektową.
Recommended publications
  • COMPUTER CHAPTER 4- INTRODUCING JAVA Introduction
    CLASS-11 SUBJECT – COMPUTER CHAPTER 4- INTRODUCING JAVA Introduction to Java programming JAVA was developed by Sun Microsystems Inc in 1991, later acquired by Oracle Corporation. It was developed by James Gosling and Patrick Naughton. It is a simple programming language. Writing, compiling and debugging a program is easy in java. It helps to create modular programs and reusable code. Bytecode javac compiler of JDK compiles the java source code into bytecode so that it can be executed by JVM. The bytecode is saved in a .class file by compiler. Java Virtual Machine (JVM) This is generally referred as JVM. Before, we discuss about JVM lets see the phases of program execution. Phases are as follows: we write the program, then we compile the program and at last we run the program. 1) Writing of the program is of course done by java programmer. 2) Compilation of program is done by javac compiler, javac is the primary java compiler included in java development kit (JDK). It takes java program as input and generates java bytecode as output. 3) In third phase, JVM executes the bytecode generated by compiler. This is called program run phase. So, now that we understood that the primary function of JVM is to execute the bytecode produced by compiler. Characteristics of Java Simple Java is very easy to learn, and its syntax is simple, clean and easy to understand. Multi-threaded Multithreading capabilities come built right into the Java language. This means it is possible to build highly interactive and responsive apps with a number of concurrent threads of activity.
    [Show full text]
  • IITM GROUP of INSTITUTIONS, MURTHAL SONIPAT What Is Java
    IITM GROUP OF INSTITUTIONS, MURTHAL SONIPAT DEPARTMENT: COMPUTER SCIENCE AND ENGG. SUBJECT: ADVANCE JAVA CSE-306B UNIT : 1 JAVA LANGUAGE BASICS JAVA: Java is a general-purpose, concurrent, object-oriented, class-based, and the runtime environment(JRE) which consists of JVM which is the cornerstone of the Java platform. This blog on What is Java will clear all your doubts about why to learn java, features and how it works. In this What is Java blog, I would be covering following topics: What is Java used for? History of Java What is Java? Features of Java Components in Java What is Java used for? Before I answer the question, what is Java used for, let me brief you about why you should choose Java. Java is highly popular and has dominated this field from early 2000‘s till the present 2018. Java has been used in different domains. Some of them are listed below: Banking: To deal with transaction management. Retail: Billing applications that you see in a store/restaurant are completely written in Java. Information Technology: Java is designed to solve implementation dependencies. Android: Applications are either written in Java or use Java API. Financial services: It is used in server-side applications. Stock market: To write algorithms as to which company they should invest in. Big Data: Hadoop MapReduce framework is written using Java. Scientific and Research Community: To deal with huge amount of data. Wait! Java can do more. 1 Let‘s see how some of the technologies make use of Java as an essential core of their functionalities.
    [Show full text]
  • Programming in Java Learning Objectives
    Programming in Java Learning objectives After undergoing the subject, students will be able to Understand the history of Java. Explain how Java programs are compiled, interpreted and executed in java environment. Explain how Java is used to develop different types of application Explain the concept of Packages and their uses Explain the concept of multithreading. Explain how we can build application with JDK. 1. History of Java Java Programming Language was written by James Gosling along with two other person ‘Mike Sheridan‘ and ‘Patrick Naughton‘, while they were working at Sun Microsystems. Initially it was named oak Programming Language. 1.1.Releases of Java Initial Java Versions 1.0 and 1.1 was released in the year 1996 for Linux, Solaris, Mac and Windows. Java version 1.2 (Commonly called as java 2) was released in the year 1998. Java Version 1.3 codename Kestrel was released in the year 2000. Java Version 1.4 codename Merlin was released in the year 2002. Java Version 1.5/Java SE 5 codename ‘Tiger’ was released in the year 2004. Java Version 1.6/Java SE 6 Codename ‘Mustang’ was released in the year 2006. Java Version 1.7/Java SE 7 Codename ‘Dolphin’ was released in the year 2011. Java Version 1.8 is the current stable release which was released this year (2015). 1.2. Five Goals which were taken into consideration while developing Java: Keep it simple, familiar and object oriented. Keep it Robust and Secure. Keep it architecture-neural and portable. Executable with High Performance. Interpreted, threaded and dynamic.
    [Show full text]
  • SUBJECT-COMPUTER CLASS-12 CHAPTER 9 – Compiling and Running Java Programs
    SUBJECT-COMPUTER CLASS-12 CHAPTER 9 – Compiling and Running Java Programs Introduction to Java programming JAVA was developed by Sun Microsystems Inc in 1991, later acquired by Oracle Corporation. It was developed by James Gosling and Patrick Naughton. It is a simple programming language. Writing, compiling and debugging a program is easy in java. It helps to create modular programs and reusable code. Bytecode javac compiler of JDK compiles the java source code into bytecode so that it can be executed by JVM. The bytecode is saved in a .class file by compiler. Java Virtual Machine (JVM) This is generally referred as JVM. Before, we discuss about JVM lets see the phases of program execution. Phases are as follows: we write the program, then we compile the program and at last we run the program. 1) Writing of the program is of course done by java programmer. 2) Compilation of program is done by javac compiler, javac is the primary java compiler included in java development kit (JDK). It takes java program as input and generates java bytecode as output. 3) In third phase, JVM executes the bytecode generated by compiler. This is called program run phase. So, now that we understood that the primary function of JVM is to execute the bytecode produced by compiler. Characteristics of Java Simple Java is very easy to learn, and its syntax is simple, clean and easy to understand. Multi-threaded Multithreading capabilities come built right into the Java language. This means it is possible to build highly interactive and responsive apps with a number of concurrent threads of activity.
    [Show full text]
  • Programming in Java Unit-I an Overview Of
    PROGRAMMING IN JAVA UNIT-I AN OVERVIEW OF JAVA: James Gosling, Patrick Naughton, Chris Worth, ED Frank and Mike Sheridan conceived Java at Sun Microsystems, Inc in 1991. It took 18 months to develop the first Working version. This language was initially called ‘OAK’ but was renamed “JAVA” in 1995. The primary motivation was the need for a platform-independent (i.e. architecture- neutral) language that could be used to create software to be embedded in various consumer electronic devices such as microwave oven and remote controls. As you can probably guess, many different types of CPU’s are used as controllers. The trouble with C and C++ (and most other languages) is that they are designed to be compiled for a specific target. Although it is possible to compile a C++ program for just about any type of CPU, to do so requires a full C++ compiler together for that CPU. The problems are that compilers are expensive and time consuming to create. An easier- more cost efficient solution was needed. In an attempt to find such a solution, Gosling and others began work on a portable, platform-independent language that could be used to produce code that would run on a variety of CPU’s under different environments. This effort ultimately led to the creation of Java. In 1993, the World Wide Web (WWW) appeared on the Internet and transformed the text-based Internet into a graphical rich environment. The project team came up with the idea of developing web applets (tiny programs) using the new language that could run on all types of computers connected to the Internet.
    [Show full text]
  • The Coffee Machine Potent Mercantile Metaphors of the Programming Language JAVA «
    Media Culture and Cultural Techniques Working Papers N°003 2020 » The Coffee Machine Potent Mercantile Metaphors of the Programming Language JAVA « Markus Krajewski Department Arts, Media, Philosophy N° 2020.003 »The Coffee Machine: Potent Mercantile Metaphors of the Programming Language JAVA« Markus Krajewski DOI: 10.5451/unibas-ep78171 Media Culture and Cultural Techniques working papers BMCCT veröffentlicht Arbeitspapiere im Forschungsbereich des Basler Seminars für Medienwissenschaft. Die Arbeitspapiere erscheinen in unregelmässigen Abständen in deutscher und englischer Sprache. BMCCT publishes working papers in the research area of the Basel Seminar for Media Studies. The working papers appear at irregular intervals in German and English. Cite this item: The »Basel Media Culture and Cultural Concept and design: Markus Krajewski, »The Coffee Machine Techniques Working Papers« (BMCCT Mario Wimmer Potent Mercantile Metaphors of the working papers) are published by Programming Language JAVA«, BMCCT Hosted by University of Basel library’s working papers, (August 2020) No.3 Seminar für Medienwissenschaft eterna server (DOI: 10.5451/unibas-ep78171). Universität Basel Holbeinstrasse 12 4051 Basel medienwissenschaft.philhist.unibas.ch [email protected] under the creative commons licence Department https://creativecommons.org/licenses/by/ Arts, Media, Philosophy 4.0/ ISSN 2673-5792 . The Coffee Machine Potent Mercantile Metaphors of the Programming Language JAVA . Markus Krajewski Department Arts, Media, Philosophy, University of Basel, [email protected] DOI:10.5451/unibas-ep78171 »Te best Java is a very excellent coffee« (Ralph Holt Cheney, 1925) 1. Prologue The Program of History In the beginning was Green, and Green was with Sun. »And the light shines on in the darkness, but the darkness has not mastered it« (NET Bible, John 1:5).
    [Show full text]
  • History of Java the History of Java Is Very Interesting. Java Was Originally Designed for Interactive Television, but It Was
    History of Java The history of Java is very interesting. Java was originally designed for interactive television, but it was too advanced technology for the digital cable television industry at the time. The history of java starts with Green Team. Java team members (also known as Green Team), initiated this project to develop a language for digital devices such as set-top boxes, televisions, etc. However, it was suited for internet programming. Later, Java technology was incorporated by Netscape. The principles for creating Java programming were "Simple, Robust, Portable, Platform-independent, Secured, High Performance, Multithreaded, Architecture Neutral, Object-Oriented, Interpreted and Dynamic". Currently, Java is used in internet programming, mobile devices, games, e-business solutions, etc. There are given the significant points that describe the history of Java. 1) James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991. The small team of sun engineers called Green Team. 2) Originally designed for small, embedded systems in electronic appliances like set-top boxes. 3) Firstly, it was called "Greentalk" by James Gosling, and file extension was .gt. 4) After that, it was called Oak and was developed as a part of the Green project. Why Java named "Oak"? 5) Why Oak? Oak is a symbol of strength and chosen as a national tree of many countries like U.S.A., France, Germany, Romania, etc. 6) In 1995, Oak was renamed as "Java" because it was already a trademark by Oak Technologies. Why Java Programming named "Java"? 7) Why had they chosen java name for java language? The team gathered to choose a new name.
    [Show full text]
  • Desenvolvimento OO Com Java O Que É Java
    Desenvolvimento OO com Java O que é Java Vítor E. Silva Souza ([email protected]) http://www.inf.ufes.br/~vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Licença para uso e distribuição • Este obra está licenciada com uma licença Creative Commons Atribuição-CompartilhaIgual4.0 Internacional; • Você tem o direito de: – Compartilhar: copiar e redistribuir o material em qualquer suporte ou formato – Adaptar: remixar, transformar, e criar a partir do material para qualquer fim, mesmo que comercial. • De acordo com os termos seguintes: – Atribuição: você deve dar o crédito apropriado, prover um link para a licença e indicar se mudanças foram feitas. Você deve fazê-lo em qualquer circunstância razoável, mas de maneira alguma que sugira ao licenciante a apoiar você ou o seu uso; – CompartilhaIgual: se você remixar, transformar, ou criar a partir do material, tem de distribuir as suas contribuições sob a mesma licença que o original. Mais informações podem ser encontradas em: http://creativecommons.org/licenses/by-sa/4.0/ Março 2016 OO & Java - O que é Java 2 Conteúdo do curso • O que é Java; • Herança, reescrita e • Variáveis primitivas e polimorfismo; controle de fluxo; • Classes abstratas; • Orientação a objetos • Interfaces; básica; • Exceções e controle de • Um pouco de vetores; erros; • Modificadores de acesso • Utilitários da API Java. e atributos de classe; Estes slides foram baseados na apostila do curso FJ-11: Java e Orientação a Objetos da Caelum e na apostila Programação Orientada a Objetos em Java do prof. Flávio Miguel Varejão. Março 2016 OO & Java - O que é Java 3 O que é Java? • Uma tecnologia; • Uma linguagem de programação; • Uma plataforma de desenvolvimento; • Um software distribuído pela Oracle; • Um ambiente de execução de programas; • Uma ilha da Indonésia (e o mar ao norte da ilha).
    [Show full text]
  • Java (Software Platform) from Wikipedia, the Free Encyclopedia Not to Be Confused with Javascript
    Java (software platform) From Wikipedia, the free encyclopedia Not to be confused with JavaScript. This article may require copy editing for grammar, style, cohesion, tone , or spelling. You can assist by editing it. (February 2016) Java (software platform) Dukesource125.gif The Java technology logo Original author(s) James Gosling, Sun Microsystems Developer(s) Oracle Corporation Initial release 23 January 1996; 20 years ago[1][2] Stable release 8 Update 73 (1.8.0_73) (February 5, 2016; 34 days ago) [±][3] Preview release 9 Build b90 (November 2, 2015; 4 months ago) [±][4] Written in Java, C++[5] Operating system Windows, Solaris, Linux, OS X[6] Platform Cross-platform Available in 30+ languages List of languages [show] Type Software platform License Freeware, mostly open-source,[8] with a few proprietary[9] compo nents[10] Website www.java.com Java is a set of computer software and specifications developed by Sun Microsyst ems, later acquired by Oracle Corporation, that provides a system for developing application software and deploying it in a cross-platform computing environment . Java is used in a wide variety of computing platforms from embedded devices an d mobile phones to enterprise servers and supercomputers. While less common, Jav a applets run in secure, sandboxed environments to provide many features of nati ve applications and can be embedded in HTML pages. Writing in the Java programming language is the primary way to produce code that will be deployed as byte code in a Java Virtual Machine (JVM); byte code compil ers are also available for other languages, including Ada, JavaScript, Python, a nd Ruby.
    [Show full text]
  • Comparative Studies of Six Programming Languages
    Comparative Studies of Six Programming Languages Zakaria Alomari Oualid El Halimi Kaushik Sivaprasad Chitrang Pandit Concordia University Concordia University Concordia University Concordia University Montreal, Canada Montreal, Canada Montreal, Canada Montreal, Canada [email protected] [email protected] [email protected] [email protected] Abstract Comparison of programming languages is a common topic of discussion among software engineers. Multiple programming languages are designed, specified, and implemented every year in order to keep up with the changing programming paradigms, hardware evolution, etc. In this paper we present a comparative study between six programming languages: C++, PHP, C#, Java, Python, VB ; These languages are compared under the characteristics of reusability, reliability, portability, availability of compilers and tools, readability, efficiency, familiarity and expressiveness. 1. Introduction: Programming languages are fascinating and interesting field of study. Computer scientists tend to create new programming language. Thousand different languages have been created in the last few years. Some languages enjoy wide popularity and others introduce new features. Each language has its advantages and drawbacks. The present work provides a comparison of various properties, paradigms, and features used by a couple of popular programming languages: C++, PHP, C#, Java, Python, VB. With these variety of languages and their widespread use, software designer and programmers should to be aware
    [Show full text]
  • Introduction to Java File
    Object Oriented Programming – SCJ2153 Introduction to JAVA Programming Language Associate Prof. Dr. Norazah Yusof Origins of the Java Language • Java was created by Sun Microsystems team led by Patrick Naughton and James Gosling in 1991. • Originally named Oak (Gosling liked the look of an oak tree that was outside his window at Sun). • Later, renamed to Java - Java coffee • In 1995, Java is released as a core component of Sun Microsystems‘ Java platform. • Now Java is part of Oracle corporation. Java logo Duke the Java mascot 2 Origins of the Java Language (cont.) • The challenge: – Intended to design a small computer language that could be used for consumer devices/appliances such as the cable TV switchboxes. – It is a difficult task because these devices do not have a lot of power or memory, the language had to be small and generate very tight code. Also, because different manufacturers may choose different central processing units (CPUs), it was important that the language not be tied to any single architecture. 3 Origins of the Java Language (cont.) • The team developed a two-step translation process to simplify the task of compiler writing for each class of appliances – Program written in Java were translated into an intermediate language that is the same for all types of processors : Java byte-code – Then, the byte-code would be translated into the machine code for each processor 4 Origins of the Java Language (cont.) • In 1994, Patrick Naughton and Jonathan Payne at Sun Microsystems developed a Web browser that could run programs over the Internet • It then evolved into the HotJava browser.
    [Show full text]
  • Course Book M.Tech.(CSE) 2019-20
    Course Book M.Tech.(CSE) 2019-20 Computing Science and Engineering Computer Science and Engineering 2019-20 Curriculum Semester I Sl. Assessment Pattern Course Code Name of the Course No L T P C IA MTE ETE 1 CENG5001 Professional Communication Skills 0 0 2 1 50 - 50 Advanced Numerical and Statistical 2 MATH5001 3 1 0 4 20 50 100 Methods Advanced Design and Analysis of 3 MCSE1110 3 0 0 3 20 50 100 Algorithms 4 MCSE1120 Advanced Computer Networks 3 0 0 3 20 50 100 5 MCSE1130 Advanced Operating Systems 3 0 0 3 20 50 100 6 MCSE1150 Advanced Software Engineering 3 0 0 3 20 50 100 Advanced Design and Analysis of 7 MCSE1111 0 0 2 1 50 - 50 Algorithms Lab 8 MCSE1121 Advanced Computer Networks Lab 0 0 2 1 50 - 50 9 MCSE1151 Technical Seminar 0 0 2 1 50 - 50 Semester II Sl Assessment Pattern Course Code Name of the Course No L T P C IA MTE ETE 1 MCSE1240 Artificial Intelligence & Machine Learning 3 0 0 0 20 50 100 2 MCSE9100 Data Mining & Analytics using R 3 0 0 3 20 50 100 3 MCSE1260 Research Methodology 3 0 0 3 20 50 100 Foundations of Information Security 4 MCSE9260 3 0 0 3 20 50 100 (Elective-1) 5 MCSE1241 AI & ML using Python Lab 0 0 4 2 50 - 50 6 MCSE9101 Data Mining & Analytics using R Lab 0 0 4 2 50 - 50 7 MCSE1250 Python Programming 0 0 4 2 50 - 50 8 MCSE1251 Advanced Java Programming Lab 0 0 4 2 50 - 50 English Proficiency and Aptitude Building - 9 SLMC5012 0 0 2 1 50 - 50 2 10 MCSE1261 Certification Course/Term Paper 0 0 2 1 50 - 50 Semester III Sl Assessment Pattern Course Code Name of the Course No L T P C IA MTE ETE 1 MCSE2320 Software Project Management 3 0 0 3 20 50 100 2 Program Elective-2 3 0 0 3 20 50 100 3 Program Elective-3 3 0 0 3 20 50 100 Quantitative and Communication 4 SLMT5001 0 0 2 1 50 - 50 Proficiency 5 MCSE2321 Software Development Lab 0 0 4 2 50 - 50 6 MCSE2381 M.
    [Show full text]