Java Programming Object Oriented Programming

Total Page:16

File Type:pdf, Size:1020Kb

Java Programming Object Oriented Programming Object Java Oriented Programming Programming From Flowcharts To Java CSC10 – Spring 2016 Object Oriented Programming Classes . Many objects are related to . This means that your each other – having the same program consists of a series abilities and attributes of objects that will interact with each other . These objects belong to the same class – which is a . An object is very abstract can classification of related be anything objects 5/1/2016 Sacramento State - CSc 10A 3 5/1/2016 Sacramento State - CSc 10A 4 Classes Example Properties . "Cat" Class properties can include: . A class describes what an • name object will store, how it behaves, etc… • fur color • breed . Properties contain data about the object . "Student" Class properties can include: • name . Methods describe how the • major treats data (its and others) • academic level – freshman, junior, … 5/1/2016 Sacramento State - CSc 10A 5 5/1/2016 Sacramento State - CSc 10A 6 1 Example Methods Class Inheritance . "Cat" Class methods: • scratch . Classes can also "inherit" from classes • purr . When a class inherits another: • sleep • gets all the features of the original class . "Student" Class methods: • but can extend its functionality • study • allows work, created previously to become the • play on smart phone foundation of a more advanced class • sleep 5/1/2016 Sacramento State - CSc 10A 7 5/1/2016 Sacramento State - CSc 10A 8 Instances / Objects Instances / Objects . Classes just describe the . Instances will have all the behavior of some "object" features of its class . They don't do anything . So, different instances of the . In object-oriented same class share the same programming, you will create features instances of these classes – . But, each instance is a i.e. objects different and unique 5/1/2016 Sacramento State - CSc 10A 9 5/1/2016 Sacramento State - CSc 10A 10 Example Classes & Instances . "Game" Class can have instances of: • Pac-Man • Call of Duty Introduction to • World of Warcraft Java . "Food" Class can have instances of: • ice cream • pizza • top ramen Start the coffee maker – seriously... 5/1/2016 Sacramento State - CSc 10A 11 2 What is Java? History of Java . The Java Programming Language was created by . Java followed a long Sun Microsystems evolutionary chain that started with the C . Currently, it is one of the programming language most popular languages . C was designed by Dennis . Although Sun collapsed Ritchie at Bell Laboratories in (purchased by Oracle), Java the1970's survived 5/1/2016 Sacramento State - CSc 10A 13 5/1/2016 Sacramento State - CSc 10A 14 C-riously Popular And Along Comes Java . C became extremely popular . When Java was developed, • minimalistic C/C++ had been in use for • made efficient programs on early machines over 20 years . C++ extended the concepts of C . So, to aid programmers... • added object oriented programming • Java uses a syntax very similar • was backwards compatible... C++ could run C to C++ programs • Java as most of the same • still used today semantics as C++ 5/1/2016 Sacramento State - CSc 10A 15 5/1/2016 Sacramento State - CSc 10A 16 However, it is different The Result... Java contains many advanced features . However, Java is not . But, has a very symbolic syntax compatible with C++ • contains very few "words" - not English-like . It removed the low-level • so, programs are not easy to read at first features of C++ . It is not a beginners language . But, it will still work on • syntax it can be intimidating snippets of code • you must type of bunch of "weird" stuff you won't understand at first 5/1/2016 Sacramento State - CSc 10A 17 5/1/2016 Sacramento State - CSc 10A 18 3 Structure of Java Programs . Java programs consist of Structure of series of class definitions Java . Each class contains local variables (properties) and Programs functions . Each function contains its own local variables as well as What the heck am I looking at? statements 5/1/2016 Sacramento State - CSc 10A 20 What are Statements? What are Statements? . Statements can be grouped together into a . A statement will carry out a specific task block . Statements are executed in order from the . Some types of statements… first listed to the last • calls to other functions . In Java, you can create your own and use • control – looping, etc… ones created for you • create variables 5/1/2016 Sacramento State - CSc 10A 21 5/1/2016 Sacramento State - CSc 10A 22 Structure of a Java Program Data about class Java Data Types Used by Method What information Java can hold 5/1/2016 Sacramento State - CSc 10A 23 4 Data in Java Integers . Used to store whole numbers . Java classes are made of . Java has three data types other classes or some that store integers primitive types . Why three? . Primitive types are not really • more bytes you use to store a classes, but data that the value, the larger can be processor understands • however, it will take more memory 5/1/2016 Sacramento State - CSc 10A 25 5/1/2016 Sacramento State - CSc 10A 26 Integer Examples Integer Data Types Data Type Range of values Bytes . 1 byte -128 .. 127 1 . 5 . -100 short -32,768 .. 32,767 2 . 1846 -2,147,483,648 .. int 4 . 1947 2,147,483,647 . -12345 -9,223,372,036,854,775,808 .. long 8 9,223,372,036,854,775,807 5/1/2016 Sacramento State - CSc 10A 27 5/1/2016 Sacramento State - CSc 10A 28 Real Numbers Real Numbers . Real numbers in Java are . Java has two data types for called "floating-point" storing real numbers . Why call it a float? . Why? • name is based on how it is • again, you might need to use actually stored more bytes to store larger • the decimal place is "floats values around" like it does in scientific • but, it will cost more memory notation 5/1/2016 Sacramento State - CSc 10A 29 5/1/2016 Sacramento State - CSc 10A 30 5 Floating-Point Examples Floating Point Data Types Data Type Range of values Bytes . -6.78 . 3.1415 10-38 to 10+38 float Both positive and negative 4 . 1.618 About 6 digits precision . 2.71828 . -355.1234 10-308 to 10+308 double Both positive and negative 8 . 1234.0 Note the zero! About 15 digits precision 5/1/2016 Sacramento State - CSc 10A 31 5/1/2016 Sacramento State - CSc 10A 32 Character Data Type Character Examples . Used to store letter individual . 'A' letters, digits, symbols, etc… . '4' Space . These are the keys you have . ' ' on your keyboard . '$' . In Java, chars are delimited . '&' by single quotes (also called apostrophes) . '^' 5/1/2016 Sacramento State - CSc 10A 33 5/1/2016 Sacramento State - CSc 10A 34 Boolean Data Type Primitive Data Type Summary Data Type Range of values byte -128 .. 127 . Used to store either a true or false value short -32,768 .. 32,767 . These are used with Boolean-Expressions int -2,147,483,648 .. 2,147,483,647 to store flags long -9,223,372,036,854,775,808 .. -9,223,372,036,854,775,807 . This is just how you did it in pseudocode float 10-38 to 10+38, positive or negative, about 6 digits precision and Flowgorithm double 10-308 to 10+308 , positive or negative, about 15 digits precision char Unicode characters (generally 16 bits per char) boolean True or false 5/1/2016 Sacramento State - CSc 10A 35 5/1/2016 Sacramento State - CSc 10A 36 6 How do you store words? Examples of Strings . What if you want to store a word? . "Sac State" • text is really just a long series of characters • so, Java implements these in memory using . "Computer Science" multiple chars called a string . "Joe Gunchy" . Java denotes a string literal with double . "Hornet" quotes . "1947" . These are stored using a class – so a . "Pac-Man" String is not a primitive data type 5/1/2016 Sacramento State - CSc 10A 37 5/1/2016 Sacramento State - CSc 10A 38 Characters . Characters are actually More on integers . Each has a unique value Characters • characters and their matching values are a "character set" • there have been many characters sets developed over How Text is Stored time 5/1/2016 Sacramento State - CSc 10A 40 Java Escape Sequences Java Escape Sequences . Java has help escape . Often you want to add a sequences start with a control character do your backslash program . This is followed by another . … but you can't type them character that represents the control character 5/1/2016 Sacramento State - CSc 10A 41 5/1/2016 Sacramento State - CSc 10A 42 7 Important Control Characters Adding characters you can't type NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI Code Value Description \a DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 7 Alert (Bell) sp ! " # $ % & ' ( ) * + , - . / \b 8 Backspace 0 1 2 3 4 5 6 7 8 9 : ; < = > ? \t 9 Tab @ A B C D E F G H I J K L M N O \n 10 New Line (Line Feed) P Q R S T U V W X Y Z [ \ ] ^ _ \v 11 Vertical tab ` a b c d e f g h i j k l m n o \f 12 Form feed (new printer page) p q r s t u v w x y z { | } ~ DEL \c 13 Carriage return 5/1/2016 Sacramento State - CSc 10A 43 5/1/2016 Sacramento State - CSc 10A 44 Some Convenient Codes Code Description \" Double quote. Allows double quotes inside string literals.
Recommended publications
  • Digital Flowchart Maker
    Bachelor thesis Computing Science Radboud University Digital flowchart maker How do we aid the learning of programming? Author: First supervisor/assessor: Frank Gerlings J.E.W. (Sjaak) Smetsers s4384873 [email protected] Second supervisor/assessor: MSc T.J. (Tim) Steenvoorden [email protected] December 12, 2018 Abstract Learning the basics of programming can be hard. Worldwide efforts try to teach people programming but there still is an ongoing shortage of pro- grammers. This thesis tries to make it easier to understand the basic concept of control flow. We will start by identifying a way to separate programming into al- gorithmic thinking and coding by using flowcharts and argue that making flowcharts can be made easier by constructing them digitally. We will ask ourselves what a flowchart creating tool should look like, delve into three different designs for such tools and finally choose one and work out a tool around it. To see how well our tool supports the process of learning how to program, we will test our tool by observing and interviewing students while they use it. In the results we will see that adding and deleting nodes and choosing specific node types goes fairly well. However, we will see that editing content of nodes is hindering the students. These problems seem to originate from technical limitations, rather than design flaws. Acknowledgements First off, I would like to thank Sjaak Smetsers and Tim Steenvoorden, my research supervisors, for their ceaseless help throughout the project. Even though the project took longer than expected, they never hesitated to show me how to do research and write a thesis.
    [Show full text]
  • Flow2code - from Hand-Drawn Flowchart to Code Execution
    FLOW2CODE - FROM HAND-DRAWN FLOWCHART TO CODE EXECUTION A Thesis by JORGE IVAN HERRERA CAMARA Submitted to the Office of Graduate and Professional Studies of Texas A&M University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Chair of Committee, Tracy Hammond Committee Members, Thomas Ioerger Zenon Medina-Cetina Head of Department, Dilma Da Silva May 2017 Major Subject: Computer Science Copyright 2017 Jorge Ivan Herrera Camara ABSTRACT Flowcharts play an important role when learning to program by conveying algorithms graphically and making them easy to read and understand. When learning how to code with flowcharts and transitioning between the two, people often use computer based soft- ware to design and execute the algorithm conveyed by the flowchart. This requires the users to learn how to use the computer-based software first, which often leads to a steep learning curve. We claim that the learning curve can be decremented by using off-line sketch recog- nition and computer vision algorithms on a mobile device. This can be done by drawing the flowchart on a piece of paper and using a mobile device with a camera to capture an image of the flowchart. Flow2Code is a code flowchart recognizer that allows the users to code simple scripts on a piece of paper by drawing flowcharts. This approach attempts to be more intuitive since the user does not need to learn how to use a system to design the flowchart. Only a pencil, a notebook with white pages, and a mobile device are needed to achieve the same result.
    [Show full text]
  • Manuale Flowgorithm Versione 2.18
    Manuale Flowgorithm Versione 2.18 Roberto Atzori « L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi. » (Edsger Wybe Dijkstra) Pag. 1 di 56 Sommario Flowgorithm ...................................................................................................................................................... 4 Caratteristiche e funzionalità ............................................................................................................................ 5 L’interfaccia ................................................................................................................................................... 5 Supporto Multilingua ..................................................................................................................................... 5 Barra del menù .............................................................................................................................................. 7 Voce di menù “File” ................................................................................................................................... 7 Stampa ................................................................................................................................................... 8 Voce di menù “Modifica” .......................................................................................................................... 9 Stile diagramma ....................................................................................................................................
    [Show full text]
  • Flowgorithm: Principles for Teaching Introductory Programming Using Flowcharts
    158 Flowgorithm: Principles for Teaching Introductory Programming Using Flowcharts Devin D. Cook California State University, Sacramento, CA Abstract For students, the task of learning their first programming language can be compounded by the challenges of syntax, semantics and superfluous code. Historically, programming languages had a gentle learning curve requiring little syntactic or semantic overhead. Modern object-oriented languages, however, create a conceptual hurdle. Even the trivial Hello World program contains syntactic and semantic complexity far beyond the level of a beginning student. This paper introduces Flowgorithm – a programming environment which allows students, with little to no programming experience, create programs using the visual metaphor of flowcharts. These flowcharts can be executed directly by the built-in interpreter allowing students to learn programming concepts before being confronted with language-specific syntax and semantics. Flowgorithm provides an integrated learning path so students can apply their knowledge to a "real" programming language. The flowcharts can be interactively translated to over 10 programming languages. These include: C#, C++, Delphi/Pascal, Java, JavaScript, Lua, Python, Ruby, Visual Basic .NET, and Visual Basic for Applications. This allows a natural transition from the simple procedural logic of flowcharts to the more common object oriented languages used by universities today. Beginning Programmers Even the most gifted computer programmer, at one point, was a beginner. And as beginners, they have to struggle with the inherit challenges of their first language. Whether the language was BASIC, Pascal, C, Java, etc… they had to first handle the issue of syntax. Many languages have a syntax closely related to natural pseudocode while others can be either obtuse or symbolic.
    [Show full text]
  • Um Ambiente Baseado Em Blocos Para Programaç ˜Ao Paralela Com Opencl
    Um Ambiente Baseado em Blocos para Programac¸ao˜ Paralela com OpenCL Josue´ da Silva Gomes Junior´ 1, Alisson Vasconcelos de Brito2 1Centro de Cienciasˆ Aplicadas e Educac¸ao˜ – Universidade Federal da Para´ıba (UFPB) Av. Santa Elizabete, 160 – CEP 58297–000 – Rio Tinto – PB – Brazil 2Centro de Informatica´ – Universidade Federal da Para´ıba (UFPB) CEP 58055–000 – Joao˜ Pessoa – PB – Brazil [email protected], [email protected] Abstract. This paper presents the educational software Blockly OpenCL. Its use is intended to help the teaching-learning parallel programming paradigm with OpenCL. It was used visual programming paradigm, through a block-based de- velopment environment made with Google Blockly API, which allows the user to create applications manipulating blocks and export them to the OpenCL C. The Blockly OpenCL language is also composed for a web page containing contextu- alizing Blockly OpenCL, material support for OpenCL API and the development environment with blocks. Resumo. Este trabalho apresenta o software educativo Blockly OpenCL. Sua utilizac¸ao˜ tem por objetivo auxiliar o ensino-aprendizagem do paradigma de programac¸ao˜ paralela com OpenCL. Nele foi utilizado o paradigma de programac¸ao˜ visual, atraves´ de um ambiente de desenvolvimento baseado em blocos feito com a API do Google Blockly, que permite ao usuario´ criar aplicac¸oes˜ manipulando blocos e exporta-los´ para a linguagem OpenCL C. O Blockly OpenCL tambem´ e´ composto por uma pagina´ web contendo uma contextualizac¸ao˜ do Blockly OpenCL, materiais apoio sobre a API OpenCL e sobre o ambiente de desenvolvimento com Blocos. 1. Introduc¸ao˜ Utilizados principalmente na industria´ de entretenimento, os processadores multicore e manycore trazem em si recursos de processamento distintos como CPU (central Pro- cessing Unit) e GPU (Graphical Processing Unit) respectivamente, promovendo o au- mento de desempenho dos sistemas atuais.
    [Show full text]
  • Comparison of Flow-Based Versus Block-Based Programming for Naive Programmers
    COMPARISON OF FLOW-BASED VERSUS BLOCK-BASED PROGRAMMING FOR NAIVE PROGRAMMERS by Kruti Dave Bachelor of Engineering in Information Technology, Mumbai University, 2012 A thesis presented to Ryerson University in partial fulfillment of the requirements for the degree of Master of Science in the program of Computer Science Toronto, Ontario, Canada, 2018 c Kruti Dave 2018 Author’s Declaration I hereby declare that I am the sole author of this thesis. This is a true copy of the thesis, including any required final revisions, as accepted by my examiners. I authorize Ryerson University to lend this thesis to other institutions or individuals for the purpose of scholarly research. I further authorize Ryerson University to reproduce this thesis by photocopying or by other means, in total or in part, at the request of other institutions or individuals for the purpose of scholarly research. I understand that my thesis may be made electronically available to the public for the purpose of scholarly research only. ii Abstract Comparison of Flow-based versus Block-based Programming for Naive Programmers Kruti Dave Master of Science, Computer Science Ryerson University, 2018 There is general agreement that most people should have some programming ability, whether to investigate the vast amount of data around them or for professional purposes. Visual Programming Languages comprise two broad categories: Flow-based, functional programming or Block-based, imperative programming. However, there has been a lack of empirical studies in the visual programming domain to evaluate the relative benefits of the two categories. This research provides an empirical study to analyze the effects of the comparison between Flow- based and Block-based paradigm, to determine which of the two representations is easier for non-programmers or novice programmers.
    [Show full text]
  • The Anatomy and Aptness of Learners Programming Language
    The Anatomy and Aptness of Learners Programming Language Muhammad Shumail Naveed Dissertation submitted for the partial fulfillment of the Degree of Doctor of Philosophy Department of Computer Science Faculty of Science Federal Urdu University of Arts, Science and Technology Karachi, Sindh, Pakistan. December 2015 © Muhammad Shumail Naveed 2015 CERTIFICATE OF ORIGINAL AUTHORSHIP I, Muhammad Shumail Naveed S/O Muhammad Khurshid Zahid, certify that the work in this dissertation has not previously been submitted for a de- gree nor has it been submitted as part of requirements for a degree except as fully acknowledged with the text. I also certify that the dissertation has been written by myself and any help that I have received in my research work or in the preparation of the dissertation itself has been acknowledged. In addition, I also certify that all the information sources and literature used are indicated in the dissertation. ||||||||{ |||||||{ Signature Date APPROVED BY Supervisor Name: Dr. Muhammad Sarim Assistant Professor Department of Computer Science Federal Urdu University of Arts, Sci- ence and Technology ||||||| ||||||| ||||||| Signature Seal Date Co-supervisor Name: Dr. Kamran Ahsan Assistant Professor Department of Computer Science Federal Urdu University of Arts, Sci- ence and Technology ||||||| ||||||| ||||||| Signature Seal Date Dedicated to my parents Abstract Computer programming is a core area in computer science education. However, learning the programming is notoriously difficult and introductory programming courses
    [Show full text]
  • C in CS1: Snags and Viable Solution Shumail Naveed, Muhammad Sarim, Adnan Nadeem
    C in CS1: Snags and Viable Solution Shumail Naveed, Muhammad Sarim, Adnan Nadeem To cite this version: Shumail Naveed, Muhammad Sarim, Adnan Nadeem. C in CS1: Snags and Viable Solution. Mehran University Research Journal of Engineering and Technology, Mehran University of Engineering and Technology, Jamshoro, Pakistan, 2018, 37 (01), pp.1-14. hal-01674977 HAL Id: hal-01674977 https://hal.archives-ouvertes.fr/hal-01674977 Submitted on 3 Jan 2018 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. C in CS1: Snags and Viable Solution SHUMAIL NAVEED*, MUHAMMAD SARIM*, AND ADNAN NADEEM* RECEIVED ON 04.12.2015 ACCEPTED ON 16.02.2016 ABSTRACT Programming is one of the career rewarding skills; however, learning programming skill is extremely hard and arduous as supported by several studies. The first programming language has an everlasting impact on the programmer’s program’s development abilities. In most of the universities the imperative paradigm is used for introductory programming courses and generally C language is used as a base language of a first programming course. The C language is a leading programming language and extensively utilized for commercial applications. The majority of the programming languages are highly motivated from the C language, yet its intrinsic complexities and non-pedagogic origin evidently makes it hard and a complex choice for a first programming course.
    [Show full text]
  • A Constructivist Instructional Design Introducing Visual Programming To
    A Constructivist Instructional Design Introducing visual programming to professional designers A thesis submitted to the Graduate School of the University of Cincinnati in partial fulfillment of the requirements for the degree of Master of Design in the Myron E. Ullman Jr. School of Design College of Design, Architecture, Art and Planning by [Xinyu Qiu] Previous Degree and Institution Committee Chair [Seward, Renee] 3/10/20 iv ABSTRACT A proliferation of introductory visual programming language raises the question of how to introduce VPLs to more creators and how to improve the usability and learnability of the VPL platform. This paper compares two different teaching methods and visual programming paradigm software to observe the influence of different factors on the use of visual programming software by adult learners in the designer group. A more constructive teaching style using gamification between participants and a more behaviorist teaching style using small lecture and interaction were exposed to participants in different instruction group. Different visual programming platforms were also tested in each group. User experience scores based on performance score and self-reported scores were collected during and after participants operating on the visual programming software. The independent-sample t-tests were used to answer the research question that: is there a mean difference in scores for v operating and self-rating between different instruction groups and different visual programming platform. The test result shows that there is a mean difference in the efficiency (performance score) between the behaviorist instruction approach and the constructivism instruction approach for using visual programming software. The performing scores in the constructive teaching group are statistically significantly higher than the performing scores in the behaviorist teaching group.
    [Show full text]
  • Honey: a Dataflow Programming Language for the Processing
    Honey: A dataflow programming language for the processing, featurization and analysis of multivariate, asynchronous and non-uniformly sampled scalar symbolic time sequences Mathieu Guillame-Bert School of Computer Science Pittsburgh, United States [email protected] September 13, 2016 Abstract We introduce HONEY; a new specialized programming language designed to facilitate the processing of multivariate, asynchronous and non-uniformly sampled symbolic and scalar time sequences. When compiled, a Honey program is trans- formed into a static process flow diagram, which is then executed by a virtual machine. Honey’s most notable features are: (1) Honey introduces a new, efficient and non-prone to error paradigm for defining recursive process flow diagrams from text input with the mindset of imperative programming. Honey’s specialized, high level and concise syntax allows fast and easy writing, reading and maintenance of complex processing of large scalar symbolic time sequence datasets. (2) Honey guarantees programs will be executed similarly on static or real-time streaming datasets. (3) Honey’s IDE includes an interactive visualization tool which allows for an interactive exploration of the intermediate and final outputs. This combina- tion enables fast incremental prototyping, debugging, monitoring and maintenance of complex programs. (4) In case of large datasets (larger than the available mem- ory), Honey programs can be executed to process input greedily. (5) The graphical arXiv:1609.03146v1 [cs.PL] 11 Sep 2016 structure of a compiled program provides several desirable properties, including distributed and/or paralleled execution, memory optimization, and program struc- ture visualization. (6) Honey contains a large library of both common and novel operators developed through various research projects.
    [Show full text]
  • Computational Thinking with the Web Crowd Using Codemapper∗
    Computational Thinking with the Web Crowd using CodeMapper∗ Patrick Vanvorce Hasan M. Jamil Department of Computer Science Department of Computer Science University of Idaho, USA University of Idaho, USA ([email protected] [email protected] ABSTRACT ACM Reference format: It has been argued that computational thinking should precede com- Patrick Vanvorce and Hasan M. Jamil. 2019. Computational inking with the Web Crowd using CodeMapper. In Proceedings of Conference, Date, Year, puter programming in the course of a career in computing. is Location., , 8 pages. argument is the basis for the slogan “logic rst, syntax later” and DOI: hp://dx.doi.org/DOI the development of many cryptic syntax removed programming languages such as Scratch!, Blockly and Visual Logic. e goal is to focus on the structuring of the semantic relationships among the logical building blocks to yield solutions to computational prob- 1 INTRODUCTION lems. While this approach is helping novice programmers and e dierences between computing and computational thinking are early learners, the gap between computational thinking and pro- signicant and can be explained in a number of ways. According to fessional programming using high level languages such as C++, Jeannee Wing [30], ”computational thinking confronts the riddle Python and Java is quite wide. It is wide enough for about one of machine intelligence: What can humans do beer than comput- third students in rst college computer science classes to drop out ers, and what can computers do beer than humans? Most funda- or fail. In this paper, we introduce a new programming platform, mentally, it addresses the question: What is computable? Today, called the CodeMapper, in which learners are able to build com- we know only parts of the answers to such questions.” In particular, putational logic in independent modules and aggregate them to computational thinking is 1) conceptualizing, not programming, create complex modules.
    [Show full text]
  • Manuale Flowgorithm Paradigma Di Programmazione - I Modelli - Abbinato Alla Versione 2.15 Di Flowgorithm
    Manuale Flowgorithm Paradigma di Programmazione - I modelli - Abbinato alla Versione 2.15 di Flowgorithm Roberto Atzori « L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi. » (Edsger Wybe Dijkstra) Pag. 1 di 77 Sommario Paradigma di Programmazione ........................................................................................................................ 4 Introduzione .................................................................................................................................................. 4 Tipi di paradigmi ............................................................................................................................................ 4 Flowgorithm ................................................................................................................................................... 6 Estensione del file ...................................................................................................................................... 6 Flags Globali ................................................................................................................................................... 9 Programma .................................................................................................................................................... 9 Identificatori e Tipi .......................................................................................................................................... 11 Attributi del linguaggio
    [Show full text]