SWIFT & #IOExtendedCLT, 18th May 2016
|
|
- Barnaby French
- 6 years ago
- Views:
Transcription
1 SWIFT & #IOExtendedCLT, 18th May 2016
2 Software Engineer at Quoin, 209 Delburg Street, Davidson, NC
3
4 Sources tell The Next Web that Google is considering making Swift a first class language for Android, while Facebook and Uber are also looking to make Swift more central to their operations. Google s Android operating system currently supports Java as its firstclass language, and sources say Swift is not meant to replace Java, at least initially. -The Next Web
5 Unfortunately, sources tell The Next Web that Google s current mindset is that Kotlin is a bit too slow when compiling. But, Kotlin is billed as a language that works everywhere Java works, and has seamless support for projects that mix it and Java. -The Next Web
6 DIFFERENCES Obj-C, rooted in C, ARC, created by Apple, so even non-devs know about Swift, very easy to pickup, community support, massive amount of courses, Swift 3.0 won t be backward compatible. Java, JVM, GC, created by JetBrains - mostly Java devs using IntelliJ for Android know about it, requires some level of programming knowledge, JetBrains has committed to long-term backwards compatibility starting with v1.0.
7 THERE ARE 800,000 NEW APP DEVELOPERS EVERY YEAR
8 WHERE TO LEARN FROM stackoverflow.com ~92k/1k vs ~1k/63 [question/votes] youtube.com: ~124k results vs ~2.3k results udacity.com: A. Intro to ios App Development with Swift B. ios Developer Nanodegree edx.com coursera.com
9
10
11 SIMILARITIES open sourced mix of good practices from multiple languages, combination of functional and objective approach, optional types, no nil as we know it, ( Null References: The Billion Dollar Mistake ) all variables must be initialized before using them, extension functions, no semicolons ;D
12 CODE EXAMPLES - OPTIONAL TYPES let n = nil // won t compile (type of expression is ambiguous without more context) let i: Int? = nil // the result is actually Optional<Int>.None var b: String = Google I/O b = nil // won t compile val n = null // won t compile val i: Int? = null var b: String = Google I/O b = null // won t compile
13 CODE EXAMPLES - OPTIONAL TYPES class Department { func description() -> String { return Name class Employee { let department: Department? = nil let sara: Employee? = Employee() sara?.department?.description() sara!.department?.description() sara!.department!.description() //! class Department { fun description() = Name class Employee { let department: Department? = null val sara: Employee? = Employee() sara?.department?.description() sara!!.department?.description() sara!!.department!!.description() //! // implicitly unwrapped values if let department = sara?.department { print(department.description()) // implicitly unwrapped values if (sara!= null && sara.department!= null){ println(sara.department.description())
14 CODE EXAMPLES - EXTENSIONS extension UIColor { class var random: UIColor { switch random()%6 { case 0: return UIColor.greenColor() case 1: return UIColor.blueColor() case 2: return UIColor.yellowColor() case 3: return UIColor.redColor() case 4: return UIColor.purpleColor() default: return UIColor.blackColor() var Color.random: Color get() = when (Math.random().nextInt(6)) { 0 -> Color.GREEN 1 -> Color.BLUE 2 -> Color.YELLOW 3 -> Color.RED 4 -> Color.MAGENTA else -> { Color.BLACK //
15 CODE EXAMPLES - FUNCTIONAL func preparestudentmessages(tutor: Tutor, on date: NSDate) { let matchidandselecteddate = { (m: Message) -> Bool in return m.tutorid == tutor.id && m.date ~= date for message in messages.filter(matchidandselecteddate) { let view = MessageView(message: message) view.origin = calculatetimelineoffset(message.date) //... fun preparestudentmessages(tutor: Tutor, date: NSDate) { val matchidandselecteddate = { m: Message -> m.tutorid == tutor.id && m.date.samedayas(date) for (message in messages.filter(matchidandselecteddate)) { val view = MessageView(message: message) view.origin = calculatetimelineoffset(message.date) //...
16
17 USER BASE VS CODE BASE
18 #ifdef greatpresentation #include standing-ovation.hpp #endif THANK YOU!
LESSONS LEARNED. SWIFT. Dagna Bieda, 7th April 2016
LESSONS LEARNED. SWIFT Dagna Bieda, 7th April 2016 SWIFT & XCODE Brief Intro Language that essentially marries the readability of Python with the speed of C++. @jeremyconkin SWIFT mix of good practices
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationCS558 Programming Languages
CS558 Programming Languages Winter 2018 Lecture 7b Andrew Tolmach Portland State University 1994-2018 Dynamic Type Checking Static type checking offers the great advantage of catching errors early And
More informationCS558 Programming Languages
CS558 Programming Languages Fall 2017 Lecture 7b Andrew Tolmach Portland State University 1994-2017 Type Inference Some statically typed languages, like ML (and to a lesser extent Scala), offer alternative
More informationSWIFT BASICS
SWIFT BASICS jhkim@dit.ac.kr www.facebook.com/jhkim3217 2014. 7. 19 Reference Swift Guide, 2014 AppCode.com Swift Tutorial: A Quick Start, Ray Wenderlich background new programming language for ios, OS
More informationAn introduction to Swift. Sasha
An introduction to Swift Sasha Goldshtein @goldshtn Exhibit A + (NSUInteger)indexOfString:(NSString *)str inarray:(nsarray *)arr { return [arr indexofobject:str]; // 1) if 'str' is nil, we return NSNotFound
More informationCords and gumballs. Mike Hearn.
Cords and gumballs Mike Hearn mike@r3.com Who what why huh?! Who am I? Kotlin early adopter: first patch to Kotlin website Sept 2014, introduced to my first product Feb 2015. Lead Platform Engineer on
More informationYou can do better with Kotlin. Svetlana Isakova
You can do better with Kotlin Svetlana Isakova Kotlin Programming Language - modern - pragmatic - Android-friendly Official on Android Not only Android Pragmatic - tooling - Java interop From has good
More informationQuestions. Exams: no. Get by without own Mac? Why ios? ios vs Android restrictions. Selling in App store how hard to publish? Future of Objective-C?
Questions Exams: no Get by without own Mac? Why ios? ios vs Android restrictions Selling in App store how hard to publish? Future of Objective-C? Grading: Lab/homework: 40%, project: 40%, individual report:
More informationA Deep Dive Into Kotlin
A Deep Dive Into Kotlin By 1 About me (droidyue.com) @Flipboard China GDG 2 3 Kotlin An official language for Android recently Powered by Jetbrains 4 Why Kotlin Concise Safe interoperable tool-friendly
More informationUnderstand Every Line of Your Codebase
Understand Every Line of Your Codebase Victoria Gonda Boris Farber Speakers Victoria Developer at Collective Idea Android and Rails Boris Partner Engineer at Google Android Partnerships Android and Java
More informationITP 342 Mobile App Dev. Functions
ITP 342 Mobile App Dev Functions Functions Functions are self-contained chunks of code that perform a specific task. You give a function a name that identifies what it does, and this name is used to call
More informationOutline. Introduction Concepts and terminology The case for static typing. Implementing a static type system Basic typing relations Adding context
Types 1 / 15 Outline Introduction Concepts and terminology The case for static typing Implementing a static type system Basic typing relations Adding context 2 / 15 Types and type errors Type: a set of
More informationReverse Engineering Swift Apps. Michael Gianarakis Rootcon X 2016
Reverse Engineering Swift Apps Michael Gianarakis Rootcon X 2016 # whoami @mgianarakis Director of SpiderLabs APAC at Trustwave SecTalks Organiser (@SecTalks_BNE) Flat Duck Justice Warrior #ducksec Motivation
More informationITP 342 Mobile App Dev. Animation
ITP 342 Mobile App Dev Animation Views Views are the fundamental building blocks of your app's user interface, and the UIView class defines the behaviors that are common to all views. Responsibilities
More informationPractice Midterm 1 Answer Key
CS 120 Software Design I Fall 2018 Practice Midterm 1 Answer Key University of Wisconsin - La Crosse Due Date: October 5 NAME: Do not turn the page until instructed to do so. This booklet contains 10 pages
More informationMobile Application Programming. Layout Techniques
Mobile Application Programming Layout Techniques Legend View Controller Containers & Content Window Container View Content View View Property View Controller Reference Delegate Root View Header View Add
More informationOptimizing Swift Performance Session 409
Developer Tools #WWDC15 Optimizing Swift Performance Session 409 Nadav Rotem Manager, Swift Performance Team Michael Gottesman Engineer, Swift Performance Team Joe Grzywacz Engineer, Performance Tools
More informationIntroduction to Swift. Dr. Sarah Abraham
Introduction to Swift Dr. Sarah Abraham University of Texas at Austin CS329e Fall 2018 What is Swift? Programming language for developing OSX, ios, WatchOS, and TvOS applications Best of C and Objective-C
More informationSWIFT! init(title: String) { self.title = title } // required initializer w/ named parameter
SWIFT! class Session { let title: String // constant non-optional field: can never be null and can never be changed var instruktør: Person? // variable optional field: null is permitted var attendees:
More informationCS558 Programming Languages
CS558 Programming Languages Winter 2017 Lecture 7b Andrew Tolmach Portland State University 1994-2017 Values and Types We divide the universe of values according to types A type is a set of values and
More informationlecture 6 Closures, Networking, CocoaPods
lecture 6 Closures, Networking, CocoaPods cs198-001 : spring 2018 announcements no new lab this week - continuation of Pokedex lab + custom app workday (attendance still required) Pokedex due Wednesday
More informationGetting Started with Kotlin. Commerzbank Java Developer Day
Getting Started with Kotlin Commerzbank Java Developer Day 30.11.2017 Hello! Alexander Hanschke Hello! Alexander Hanschke CTO at techdev Solutions GmbH in Berlin Hello! Alexander Hanschke CTO at techdev
More informationSwift. Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder
Swift Mobile Application Development in ios School of EECS Washington State University Instructor: Larry Holder Mobile Application Development in ios 1 Why Swift Recommended for all ios, macos, watchos,
More informationWriting truly testable code. Anton Rutkevich Juno
Writing truly testable code Anton Rutkevich Juno Why tests? Codebase grows -> chances of making a mistake go up Software gets released -> cost of a mistake goes up -> Fear of introducing modifications!
More informationCS ios. Extensions, Protocols, and Generics
CS4962 - ios Extensions, Protocols, and Generics Package Management Application level package managers CocoaPods Carthage SPM (Swift Package Manager) CocoaPods Centralized, searchable repository Automatically
More informationCSC 1051 Algorithms and Data Structures I. Midterm Examination February 24, Name: KEY 1
CSC 1051 Algorithms and Data Structures I Midterm Examination February 24, 2014 Name: KEY 1 Question Value Score 1 10 2 10 3 10 4 10 5 10 6 10 7 10 8 10 9 10 10 10 TOTAL 100 Please answer questions in
More informationAda 95 on the JVM Tea for 2 and 2 for Tea. Franco Gasperoni
Ada 95 on the JVM Tea for 2 and 2 for Tea Franco Gasperoni gasperon@act-europe.fr Overview What s Next? Ada: when Software Matters JGNAT: Ada environment for the JVM Hardware evolution means... BIG changes
More informationKOTLIN - A New Programming Language for the Modern Needs
KOTLIN - A New Programming Language for the Modern Needs [1] Mrs.J.ArockiaJeyanthi, [2] Mrs.T.Kamaleswari [1] Assistant Professor, [2] Assistant Professor, [1] Department of Computer Science, A.P.C. Mahalaxmi
More informationDo Languages Matter? Lecture 1: Overview. Why Article. Do Languages Matter? Why choose C vs C++ vs Java vs Python...!
Do Languages Matter? Why choose C vs C++ vs Java vs Python... Lecture 1: Overview CSC 131 Fall, 2014 Kim Bruce What criteria to decide? Scenarios: - ios app - Android App - Web App - Mac App - Windows
More informationReview: Using Imported Code. What About the DrawingGizmo? Review: Classes and Object Instances. DrawingGizmo pencil; pencil = new DrawingGizmo();
Review: Using Imported Code Class #06: Objects, Memory, & Program Traces Software Engineering I (CS 120): M. Allen, 30 Jan. 2018 ; = new ();.setbackground( java.awt.color.blue );.setforeground( java.awt.color.yellow
More informationA Type is Worth a Thousand Tests
A Type is Worth a Thousand Tests Manuel M T Chakravarty Applicative & Tweag I/O mchakravarty TacticalGrace justtesting.org haskellformac.com Let s talk about Let s talk about Swift Let s talk about Language
More informationMore Examples. Lecture 24: More Scala. Higher-Order Functions. Control Structures
More Examples Lecture 24: More Scala CSC 131 Fall, 2014 Kim Bruce MyList, MyArrayList, SinglyLinkedList - Val vs var - Can create Array[T] (unlike Java), though need implicit ClassManifest - foreach(f)
More informationTracing Ambiguity in GADT Type Inference
Tracing Ambiguity in GADT Type Inference ML Workshop 2012, Copenhagen Jacques Garrigue & Didier Rémy Nagoya University / INRIA Garrigue & Rémy Tracing ambiguity 1 Generalized Algebraic Datatypes Algebraic
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques () Lecture 12 February 7, 2018 Partiality, Sequencing, Records Chapters 12, 13 Midterm 1 This Friday in class Review session Tonight, 6 7:30 PM DRLB A1 Announcements
More informationThe Go Programming Language. Frank Roberts
The Go Programming Language Frank Roberts frank.roberts@uky.edu - C++ (1983), Java (1995), Python (1991): not modern - Java is 18 years old; how has computing changed in 10? - multi/many core - web programming
More informationCS 220: Introduction to Parallel Computing. Beginning C. Lecture 2
CS 220: Introduction to Parallel Computing Beginning C Lecture 2 Today s Schedule More C Background Differences: C vs Java/Python The C Compiler HW0 8/25/17 CS 220: Parallel Computing 2 Today s Schedule
More informationThe Awesomeness of Go. Igor Lankin DevFest Karlsruhe, Nov 2016
The Awesomeness of Go Igor Lankin DevFest Karlsruhe, Nov 2016 Igor Lankin Software Developer @ inovex C#, Java, Java Script, full-time GO (waipu.tv ) 2 What is Go? 3 An Awesome Programming Language 4 Imagine
More informationAttributes of Variable. Lecture 13: Run-Time Storage Management. Lifetime. Value & Location
Attributes of Variable Lecture 13 Run-Time Storage Management CSC 131 Kim Bruce Scope Lifetime Location Value Done! Lifetime Value & Location FORTRAN - all allocated statically - Stack-based (C/C++/Java/Pascal/...)
More informationMemory Management: The Details
Lecture 10 Memory Management: The Details Sizing Up Memory Primitive Data Types Complex Data Types byte: char: short: basic value (8 bits) 1 byte 2 bytes Pointer: platform dependent 4 bytes on 32 bit machine
More informationCMSC 330: Organization of Programming Languages
CMSC 330: Organization of Programming Languages Operational Semantics CMSC 330 Summer 2018 1 Formal Semantics of a Prog. Lang. Mathematical description of the meaning of programs written in that language
More informationITP 342 Mobile App Dev. Animation
ITP 342 Mobile App Dev Animation Core Animation Introduced in Mac OS X Leopard Uses animatable "layers" built on OpenGL UIKit supports Core Animation out of the box Every UIView has a CALayer behind it
More informationStanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016
Stanford Developing Applications for ios Today Memory Management for Reference Types Controlling when things leave the heap Closure Capture Closures capture things into the heap too Extensions A simple,
More informationKotlin for Android developers
ROME - APRIL 13/14 2018 Kotlin for Android developers Victor Kropp, JetBrains @kropp Kotlin on JVM + Android JS In development: Kotlin/Native ios/macos/windows/linux Links Kotlin https://kotlinlang.org
More informationCSCI Test 1.Spring 2004 Student Id: Grading: Undergrads, you are responsible for 110 points. Grads: you are responsible for 120 points
1a.Define Programming Language. (3 b. From the point of view of development of software packages, list the kinds of activities that a programming language ought to support. (4 b. List the 3 factors in
More informationCS 371L - Mobile Computing (ios) Dr. William C. Bulko. CS 371L Mobile Computing (ios) Introduction
CS 371L - Mobile Computing (ios) Dr. William C. Bulko CS 371L Mobile Computing (ios) Introduction 2014 The Evolution of Computing Mainframes Minicomputers - fridge-size PCs - desktop and deskside Laptops
More informationSSA Based Mobile Code: Construction and Empirical Evaluation
SSA Based Mobile Code: Construction and Empirical Evaluation Wolfram Amme Friedrich Schiller University Jena, Germany Michael Franz Universit of California, Irvine, USA Jeffery von Ronne Universtity of
More informationGETTING STARTED WITH Kotlin INTRODUCTION WHERE TO START CODING BASIC SYNTAX
257 CONTENTS INTRODUCTION GETTING STARTED WITH Kotlin WHERE TO START CODING BASIC SYNTAX CONTROL FLOW: CONDITIONS CONTROL FLOW: LOOPS BASIC TYPES CLASSES FUNCTION TYPES AND LAMBDAS HIGHER-ORDER FUNCTIONS
More informationAlgebraic data types. The case against null
Algebraic data types The case against null Motivation PL history (1970's) SML, OCaml, Haskell, Scala, F#, Rust, Swift Variants Null references User-defined Types compound ("Dunedin", 120_000) : string
More informationCOMP327 Mobile Computing Session:
COMP327 Mobile Computing Session: 2018-2019 Lecture Set 5a - + Comments on Lab Work & Assignments [ last updated: 22 October 2018 ] 1 In these Slides... We will cover... Additional Swift 4 features Any
More informationCMSC 330: Organization of Programming Languages. OCaml Imperative Programming
CMSC 330: Organization of Programming Languages OCaml Imperative Programming CMSC330 Spring 2018 1 So Far, Only Functional Programming We haven t given you any way so far to change something in memory
More informationBEGINNING ios PROGRAMMING
BEGINNING ios PROGRAMMING GEORGIA TECH RESEARCH NETWORK OPERATIONS CENTER (RNOC) *slides are based on the presentations by Professor Russell J Clark and Brian Davidson Swi$ Objec+ve- C OPTIONS RubyMo+on
More informationWhat s New in MapKit. App Frameworks #WWDC17. Fredrik Olsson
Session App Frameworks #WWDC17 What s New in MapKit 237 Fredrik Olsson 2017 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple. MKMapView.mapType.standard
More informationCMSC 330: Organization of Programming Languages. Formal Semantics of a Prog. Lang. Specifying Syntax, Semantics
Recall Architecture of Compilers, Interpreters CMSC 330: Organization of Programming Languages Source Scanner Parser Static Analyzer Operational Semantics Intermediate Representation Front End Back End
More informationJava language. Part 1. Java fundamentals. Yevhen Berkunskyi, NUoS
Java language Part 1. Java fundamentals Yevhen Berkunskyi, NUoS eugeny.berkunsky@gmail.com http://www.berkut.mk.ua What Java is? Programming language Platform: Hardware Software OS: Windows, Linux, Solaris,
More informationCOMP-520 GoLite Tutorial
COMP-520 GoLite Tutorial Alexander Krolik Sable Lab McGill University Winter 2019 Plan Target languages Language constructs, emphasis on special cases General execution semantics Declarations Types Statements
More information} Each object in a Java program has an identifier (name) } This includes:
Class #05: More about Objects and Methods Software Design I (CS 120): M. Allen, 11 Sept. 2018 Important Java Syntax I: Identifiers Each object in a Java program has an identifier (name) This includes:
More informationCMSC 330: Organization of Programming Languages. OCaml Imperative Programming
CMSC 330: Organization of Programming Languages OCaml Imperative Programming CMSC330 Fall 2017 1 So Far, Only Functional Programming We haven t given you any way so far to change something in memory All
More informationPractice Midterm 1. Problem Points Score TOTAL 50
CS 120 Software Design I Spring 2019 Practice Midterm 1 University of Wisconsin - La Crosse February 25 NAME: Do not turn the page until instructed to do so. This booklet contains 10 pages including the
More informationUnit 7. 'while' Loops
1 Unit 7 'while' Loops 2 Control Structures We need ways of making decisions in our program To repeat code until we want it to stop To only execute certain code if a condition is true To execute one segment
More informationControl Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003
Control Flow COMS W1007 Introduction to Computer Science Christopher Conway 3 June 2003 Overflow from Last Time: Why Types? Assembly code is typeless. You can take any 32 bits in memory, say this is an
More informationKotlin for the Pragmatic Functionalist
Kotlin for the Pragmatic Functionalist Paco Estevez Kotlin logo: 2015-present - JetBrains KotlinConf logo: 2017 - JetBrains Kategory logo: 2017 present - The Kategory maintainers ReasonML logo: 2015 present
More informationUnderstanding Undefined Behavior
Session Developer Tools #WWDC17 Understanding Undefined Behavior 407 Fred Riss, Clang Team Ryan Govostes, Security Engineering and Architecture Team Anna Zaks, Program Analysis Team 2017 Apple Inc. All
More informationA quick introduction to SML
A quick introduction to SML CMSC 15300 April 9, 2004 1 Introduction Standard ML (SML) is a functional language (or higherorder language) and we will use it in this course to illustrate some of the important
More informationWhat Code Generation Can Do for You. Marc-Antoine Sauvé
What Code Generation Can Do for You Marc-Antoine Sauvé Hopper Hopper Creates Trust from Data We process 300 billion flight prices each month to build trust and optimize customer interactions. Repetitive
More informationStanford CS193p. Developing Applications for ios. Fall CS193p. Fall
Stanford Developing Applications for ios Today Mostly Swift but some other stuff too Autolayout teaser Quick review of what we learned in Concentration CountableRange of floating point numbers Tuples Computed
More informationint j = 0, sum = 0; for (j = 3; j <= 79; j++) { sum = sum + j; System.out.println(sum); //Show the progress as we iterate thru the loop.
11-1 One of the most important structures in Java is the -loop. A loop is basically a block of code that is with certain rules about how to start and how to end the process. Suppose we want to sum up all
More informationScale Up with Lock-Free Algorithms. Non-blocking concurrency on JVM Presented at JavaOne 2017 /Roman JetBrains
Scale Up with Lock-Free Algorithms Non-blocking concurrency on JVM Presented at JavaOne 2017 /Roman Elizarov @ JetBrains Speaker: Roman Elizarov 16+ years experience Previously developed high-perf trading
More informationAssumptions. History
Assumptions A Brief Introduction to Java for C++ Programmers: Part 1 ENGI 5895: Software Design Faculty of Engineering & Applied Science Memorial University of Newfoundland You already know C++ You understand
More informationMoving Fast with High Reliability: Program Analysis at Uber
Moving Fast with High Reliability: Program Analysis at Uber Manu Sridharan Software Reliability Workshop ETH Zurich OCTOBER 14, 2017 Uber Apps Rider Driver Eats ios and Android Uber Apps Rider Driver Eats
More informationSome Advanced ML Features
Some Advanced ML Features Mooly Sagiv Michael Clarkson, Cornell CS 3110 Data Structures and Functional Programming University of Washington: Dan Grossman ML is small Small number of powerful constructs
More informationAdaptive Layout Hands-On Challenges
Adaptive Layout Hands-On Challenges Copyright 2015 Razeware LLC. All rights reserved. No part of this book or corresponding materials (such as text, images, or source code) may be reproduced or distributed
More informationSCU SEEDs Workshop Angela Musurlian
SCU SEEDs Workshop Angela Musurlian Lecturer Department of Computer Engineering Santa Clara University amusurlian@scu.edu 1 This Talk Part I Computing Part II Computing at SCU Part III Today s activity
More information2 years without Java or reload Android development with Kotlin.
2 years without Java or reload Android development with Kotlin KirillRozov@EPAM Who am I? Team Lead in EPAM More than 6 years in Android development Kotlin Evangelist Co-organizer GDG Minsk, Android Academy
More informationCopyright
1 Angry Birds Sudoku Trivia Crack Candy Crash Saga 2 The NYT app Buzzfeed Flipboard Reddit 3 Finance apps Calendars Translators Grocery list makers 4 Music apps Travel Apps Food & Drink apps Dating apps
More information@Override public void start(stage primarystage) throws Exception { Group root = new Group(); Scene scene = new Scene(root);
Intro to Drawing Graphics To draw some simple graphics, we first need to create a window. The easiest way to do this in the current version of Java is to create a JavaFX application. Previous versions
More informationKOTLIN/NATIVE + CLANG, TRAVEL NOTES NIKOLAY IGOTTI, JETBRAINS
KOTLIN/NATIVE + CLANG, TRAVEL NOTES NIKOLAY IGOTTI, JETBRAINS KOTLIN IS NOT JUST AN ISLAND KOTLIN LANGUAGE FP and OOP language Type inference, smart casts, nullability checks Generics (erased, with reification
More informationLecture 15 CIS 341: COMPILERS
Lecture 15 CIS 341: COMPILERS Announcements HW4: OAT v. 1.0 Parsing & basic code generation Due: March 28 th No lecture on Thursday, March 22 Dr. Z will be away Zdancewic CIS 341: Compilers 2 Adding Integers
More informationTopic 6: A Quick Intro To C. Reading. "goto Considered Harmful" History
Topic 6: A Quick Intro To C Reading Assumption: All of you know basic Java. Much of C syntax is the same. Also: Some of you have used C or C++. Goal for this topic: you can write & run a simple C program
More informationUI-Testing, Reactive Programming and some Kotlin.
UI-Testing, Reactive Programming and some Kotlin anders.froberg@liu.se Load up your guns, and bring your friends This is the end, My only Friend, the end Äntligen stod prästen i predikstolen I ll be back
More informationSwift. Introducing swift. Thomas Woodfin
Swift Introducing swift Thomas Woodfin Content Swift benefits Programming language Development Guidelines Swift benefits What is Swift Benefits What is Swift New programming language for ios and OS X Development
More informationCS61, Fall 2012 Section 2 Notes
CS61, Fall 2012 Section 2 Notes (Week of 9/24-9/28) 0. Get source code for section [optional] 1: Variable Duration 2: Memory Errors Common Errors with memory and pointers Valgrind + GDB Common Memory Errors
More informationITP 342 Advanced Mobile App Dev. Memory
ITP 342 Advanced Mobile App Dev Memory Memory Management Swift uses Automatic Reference Counting (ARC) to track and manage your app's memory usage. In most cases, this means that memory management just
More informationProgramming Languages
CSE 130 : Winter 2009 Programming Languages News PA 2 out, and due Mon 1/26 5pm Lecture 5: Functions and Datatypes t UC San Diego Recap: Environments Phone book Variables = names Values = phone number
More informationCS109A ML Notes for the Week of 1/16/96. Using ML. ML can be used as an interactive language. We. shall use a version running under UNIX, called
CS109A ML Notes for the Week of 1/16/96 Using ML ML can be used as an interactive language. We shall use a version running under UNIX, called SML/NJ or \Standard ML of New Jersey." You can get SML/NJ by
More informationKotlin, Start? Start! (pluu) Android Developer GDG Korea Android Organizer
Kotlin, Start? Start! (pluu) Android Developer GDG Korea Android Organizer Agenda Kotlin Overview Kotlin?? Basic fun main(args: Array): Unit { println("hello, world!") Basic Function Keyword
More informationCS193p Spring 2010 Thursday, April 29, 2010
CS193p Spring 2010 Announcements You should have received an e-mail by now If you received e-mail approving enrollment, but are not in Axess, do it! If you have any questions, please ask via e-mail or
More informationFresh Async With Kotlin. Presented at QCon SF, 2017 /Roman JetBrains
Fresh Async With Kotlin Presented at QCon SF, 2017 /Roman Elizarov @ JetBrains Speaker: Roman Elizarov 16+ years experience Previously developed high-perf trading software @ Devexperts Teach concurrent
More informationInteractive Fiction Language (IFL)
Interactive Fiction Language (IFL) Team Introduction Project Manager: John Liu Language Guru: Matthew Suozzo System Architect: Michael Yan System Integrator: Qian Yu System Tester: Heather Fisher Interactive
More informationdata_type variable_name = value; Here value is optional because in java, you can declare the variable first and then later assign the value to it.
Introduction to JAVA JAVA is a programming language which is used in Android App Development. It is class based and object oriented programming whose syntax is influenced by C++. The primary goals of JAVA
More informationKotlin In Spreadshirt JavaLand,
Kotlin In Practice @philipp_hauer Spreadshirt JavaLand, 13.03.18 Spreadshirt 2 Hands Up! Kotlin Features and Usage in Practice Data Classes Immutability made easy data class DesignData( val filename: String,
More informationRecap: Functions as first-class values
Recap: Functions as first-class values Arguments, return values, bindings What are the benefits? Parameterized, similar functions (e.g. Testers) Creating, (Returning) Functions Iterator, Accumul, Reuse
More informationQuick Reference. There are several already named colors which you can use, but you must import the appropriate Java library.
Quick Reference This appendix contain information on many of the useful objects and methods related to this book. Some are used in the book, others are just extras you may want to explore to add extra
More information*Java has included a feature that simplifies the creation of
Java has included a feature that simplifies the creation of methods that need to take a variable number of arguments. This feature is called as varargs (short for variable-length arguments). A method that
More informationData Types The ML Type System
7 Data Types 7.2.4 The ML Type System The following is an ML version of the tail-recursive Fibonacci function introduced Fibonacci function in ML in Section 6.6.1: EXAMPLE 7.96 1. fun fib (n) = 2. let
More informationIntroductory ios Development
Introductory ios Development 152-164 Unit 5 - Multi-View Apps Quick Links & Text References What is a Delegate? What is a Protocol? Delegates, Protocols and TableViews Creating a Master-Detail App Modifying
More informationName: 1) 2) 3) 4) 5) Learning Objectives (Milestones): 1. Create and use JUnit tests to debug a sample Java program.
Lab Exercise #2 junit Testing with Eclipse CS 2334, Spring 2014 Due by: Friday, January 24, 2014, 4:30 pm CST This lab is a group exercise. Students must complete this assignment with at least one partner.
More informationXcode and Swift CS 4720 Mobile Application Development
Xcode and Swift Mobile Application Development Why Java for Android? Let s first recap: why do you think Android uses Java? 2 Why Java for Android? Some good reasons: You can t find a CS major that doesn
More informationlearning objectives learn about variables, their types and their values learn about different number representations
programming basics learning objectives algorithms your software system software hardware learn about variables, their types and their values learn about different number representations learn boolean algebra
More information