AI News, Difference between revisions of "Portal:Computer programming"

Difference between revisions of "Portal:Computer programming"

Computer Programming is a field that involves the methodology behind the programming, software abstraction, algorithms, data structures, design, testing, and maintenance of computer software.

70-536 Microsoft .NET Framework 2.0 - Application Development Foundation - using Mono  •  Visual

MOO - object oriented techniques for Multi-User Domain environments.

The histories of Wikiversity pages indicate who the active participants are.

If you are an active participant in this department, you can list your name here (this can help small departments grow and the participants communicate better;

for large departments a list of active participants is not needed).

MS in Computer Graphics Technology

The MS degree in CGT is highly flexible and enables students to focus in one of the areas below and to create an individualized plan of study.

Computer graphics programming prepares students for jobs in research and development on computer graphics topics such as mgeometric and procedural modeling, object reconstruction, GPU-oriented computing, real-time computer graphics, and simulations.

HCDD at Purdue combines knowledge of technology, human nature, as well as visual and written communication to create products and services with graphical user interfaces that are easy and fun to use.

Information visualization and visual analytics studies the (interactive) visual representations of abstract data, scientific data, and other sources of information to reinforce human cognition.

outgrowth of the fields of information visualization and scientific visualization, visual analytics focuses on analytical reasoning facilitated by interactive visual interfaces.

Applied Software Development (ASD) Part-time Associate Certificate 6958acert

This hands-on course is designed for experienced object oriented programmers who already know how to write code and are already able develop a software application.

The main focus of this course is to learn to design and develop apps for the latest iOS platform to Apple standards.

Xcode, Cocoa Touch API, Swift, troubleshooting and debugging, Git source control basics, memory management, user input and gesture recognition, Auto Layout, data persistence including Core Data, NSUserDefaults and Plists.

Prerequisite: COMP 2526 or COMP 2613 or COMP 2614 or COMP 2617 or equivalent ability to develop a complete software application in an Object Oriented Programming such as Java, C# or C++.

Course Descriptions

Students will be asked to write various programs in Java (approximately 50-150 lines of code) and will be graded both on the correctness of their solutions and the design choices they have made in developing their programs.

Specific Java topics to be covered include: basic control structures (functions, if, for, while), primitive types, using predefined libraries and classes, arrays, classes, combinations of arrays and classes, file processing and simple recursion.

Students will be asked to write various programs in Java (approximately 100-250 lines of code) and will be graded both on the correctness of their solutions and the design choices they have made in developing their programs.

Specific Java and data structure topics to be covered include: advanced recursion, linked lists, binary trees, hashing, elementary analysis of efficiency.

The evolution of computing from counting through artificial intelligence, the relevance and impact of computing, historical events, and influential mathematicians, scientists, entrepreneurs, and startups.

Students experience computing as a creative activity, use abstraction to focus on relevant concepts, develop algorithms, solve problems, and see how data and information facilitate the creation of knowledge.

Programming topics: basic control structures, primitive data types, arrays, classes, recursion, linked structures, binary trees, hashing.

[Credit allowed for CSC 127B or CSC 227 but not for both.] Introduction to the structures and proof techniques used in computer science: sets, relations, functions, predicate logic, induction, finite automata, grammars, parsing.

Learn and apply some of the current tools of modern and object-oriented technology: Inheritance, Polymorphism, interfaces, Event-driven programming, graphical user interfaces, Uses cases, Responsibility driven design, Unified Modeling Language (UML), Object-Oriented Design Patterns.

Prerequisites: CSC 127A or CSC 227, ISTA 130, ECE 175 or equivalent experience in a high level programming language that includes variables, strings, selection, loops, methods, parameters, and arrays.

Topics include trees, graphs, program verification, algorithm analysis, recurrence relations, algorithm classes (greedy, divide and conquer), hashing, combinatorics and elementary probability.

For each language we will study data types, control structures, syntax and semantics, idiomatic constructs, translation into executable units, and the run-time environment.

Introduction to C# and the .NET Platform for students with a Java background, covering the structures, paradigms, and problems for which the language and the platform were designed while teaching real-world applications of object-oriented programming and multilanguage systems.

Explores the issues involved in designing and building enterprise web applications : client/server and n-tier architectures, database access, XML, web services.

The bulk of the grade will come from exams ( two midterms and a final) and evaluation of their individual project (one mid semester review and a final review) Syllabus : Fundamental concepts of web programming, Basic HTML/CSS/Javascript, Client / Server programming, Server side controls, Brief overview of database, Basic XML/XSL, N-tier application architecture, Sessions and state management, Security for web applications, Web services Prerequisites: CSC 386 or consent of instructor.

Specialized work on an individual basis, consisting of instruction and practice in actual service in a department, program, or discipline.

Topics covered will include mobile operting systems and development environments, input modalities and user interfaces for mobile devices, thin clientes and mobile Web, and location-aware services.

Specific topics include: Basic Concepts - Hardware, Applications, and Programming Styles - Processes and Synchronization - Programming with Shared Variables - Locks and Barriers - Semaphores - Monitors - Distributed Programming - Message Passing - Remote Procedure Call and Rendezvous - Paradigms for Process Interaction - Major Applications - Scientific Computing - Distributed Systems Prerequisites: CSC 345, CSC 352;

Theory and practice of computer networks, emphasizing the principles underlying the design of network software and the role of the communications system in distributed computing.

The course will include an overview of common graphics hardware, 2D and 3D transformations and viewing, and basic raster graphics concepts such as scan-conversion, bitblt's, and clipping.

This course introduces the fundamental software engineering techniques for developing correct, efficient, reliable, maintainable and evolvable software for a large project.

In the highly dynamic and competitive software industry, the customers' needs may sometimes be difficult to understand in advance or may change while the software is being developed.

How to represent and overlay maps, find nearest neighbors, solve linear programming problems, search geometric data bases and more.

The course is targeted at students looking for effective ways of understanding data from their own fields, as well as students interested in learning the fundamentals that will enable them to build and improve the state of the art.

This course covers fundamental principles of energy management faced by designers of hardware, operating systems, and data centers.

Finally we will consider large scale data centers where energy management is done at multiple layers from individual components in the system to shutting down entries subset of machines.

The content has depth in the area of biological sequence analysis, and breadth in areas such as phylogeny construction, protein structure prediction, and genome rearrangement analysis.

In general terms, the course covers the two primary functions of an operating system: insulating users and applications from details of the computer hardware, and managing the allocation of resources to improve efficiency.

Specific topics covered include the process model of computation and the related areas of mutual exclusion and process synchronization, including the use of semaphores, message passing, and monitors.

With respect to resource management, areas covered include processor scheduling, memory management, and management of secondary storage devices, such as magnetic disks.

The topics covered include conceptual design, data models, query languages, logical database design, physical database design, and introduction to query optimization.

In particular, the course will cover basic concepts of computer security such as threat models and security policies, and will show how these concepts apply to specific areas such as communication security, software security, operating systems security, network security, web security, and hardware-based security.

This course is an introduction to the fundamental models of computation used throughout computer science: finite automata, pushdown automata, and Turing machines.

The only successful method known for learning these skills is by working challenging problems, therefore, heavy emphasis is laid upon student problem assignments and careful evaluation of student solutions.

Topics covered include: finite automata and regular expressions, Turing machines, properties of regular sets, Church's thesis, context-free grammars and pushdown automata, recursive and recursively , enumerable sets, properties of context-free languages, universal machines, parsing applications, undecidable problems and reducibility Prerequisites: CSC 345;

In this course we will study the basic approaches that have been developed to analyze image data in an attempt to solve this problem, and their applications to other related areas such as computer graphics and image databases.

This course should be considered by students interested in computer vision, image processing, image databases, computer graphics, artificial intelligence, and cognitive science.

Its goals are to build an ability to evaluate and compare programming languages, both from the user's and implementor's view, and to develop precise mechanisms for specifying the semantics of programming languages.

Specific topics include: scope of objects and time of binding, module mechanisms (e.g., blocks, procedures, coroutines), data abstraction, datatypes, control structures, storage management and runtime support, operational, denotational, and axiomatic semantic specification, applicative and object-oriented languages.

digital, delay/latency, bandwidth, etc., Network architecture: protocols, layering, encapsulation, Resource allocation: multiaccess networks, congestion control, End-to-end services: reliability, flow control, message order, Experimental functionality: multicast, mobility, integrated and differentiated services, Switching: forwarding, routing, contention, multicast, scalability, Performance: latency, throughput, burstiness, jitter, Applications: web, remote file access, audio and video.

The course will include an overview of common graphics hardware, 2D and 3D transformations and viewing, and basic raster graphics concepts such as scan-conversion, bitblt's, and clipping.

Prerequisites: CSC 335, CSC 345, CSC 352, MATH 215 This course introduces the fundamental software engineering techniques for developing correct, efficient, reliable, maintainable and evolvable software for a large project.

In the highly dynamic and competitive software industry, the customers' needs may sometimes be difficult to understand in advance or may change while the software is being developed.

The study of algorithms for geometric objects, using a computational geometry approach, with an emphasis on applications for graphics, VLSI, GIS, robotics, and sensor networks.

Topics may include the representation and overlaying of maps, finding nearest neighbors, solving linear programming problems, and searching geometric databases.

This course will explore current research problems in visualizing large and complex data such as social networks with hundreds of thousands of participants and millions of relationships.

Algorithms for Molecular Biology Prerequisites: CSC 445, CSC 473, and MATH 362 This course covers fundamental principles of energy management faced by designers of hardware, operating systems, and data centers.

Finally we will consider large scale data centers where energy management is done at multiple layers from individual components in the system to shutting down entries subset of machines.

Prerequisites : CSC 452 or equivalent course in operating systems This course introduces fundamental results in discrete algorithms for combinatorial problems in bioinformatics and computational biology.

The content has depth in the area of biological sequence analysis, and breadth in areas such as phylogeny construction, protein structure prediction, and genome rearrangement analysis.

This course studies fundamental concepts in modern operating systems, emphasizing the design of operating systems for parallel and distributed systems.

Specific topics discussed will include: LR parsing - code generation and machine independent peephole analysis - code generation for modern architectures such as RISC machines - register allocation - formulation and solution of data flow problems - optimization using data flow information.

In particular, the course will cover basic concepts of computer security such as threat models and security policies, and will show how these concepts apply to specific areas such as communication security, software security, operating systems security, network security, web security, and hardware-based security.

The bulk of the course then focuses on what every student should know about machine-specific complexity theory, the interrelationships among complexity classes, and the study of both NP complete and provably intractable problems.

The course covers general design issues, such as the design and use of instruction sets, microcoding, pipelining, the memory hierarchy, caches, and hardware support for virtual memory.

In this course we will study the basic approaches that have been developed to analyze image data in an attempt to solve this problem, and their applications to other related areas such as computer graphics and image databases.

This course should be considered by students interested in computer vision, image processing, image databases, computer graphics, artificial intelligence, and cognitive science.

In this course we will discuss recent results related to problems such as: establishing communication protocols between sensors, computing sensors' optimal locations, maintaining schedules of activation of sensors, aggregating data from the sensors, maintaining connectivity between mobile sensors, handling security issues etc.

Designed to develop skills in the major professional forms: presentation, journal papers, theses, and dissertations.

Object Oriented Programming Concepts

11:40 - Objects 13:30 - Class 17:00 - Abstraction 21:40 - Encapsulation 27:20 - Interface 29:40 - Inheritance 32:57 - Polymorphism C programming concepts ...

Birth of BASIC

Professors John Kemeny and Tom Kurtz along with a band of Dartmouth undergraduates invent the Basic computer language.

CodeCrew Code School

Located in Memphis, CodeCrew Code School is a hands-on, challenging, and fun program, designed to train young adults aged 16 to 30 to be entry-level ...

Lecture 0 - Introduction to Computer Science I

This is first lecture from the series of course "Introduction to Computer Science I", Harvard OpenCourseWare with Instructor David J. Malan. The Instructor is just ...

Pong - Lecture 0 - CS50's Introduction to Game Development

00:00:00 - Introduction 00:04:10 - Lecture Topics 00:07:35 - What is Lua? 00:09:20 - LÖVE2D 00:10:08 - Game Loops 00:11:06 - 2D Coordinate System ...

1 3 1Main Components in a Computing System Vanderbilt University Coursera

Thanks for joining Java for Android, which is the first MOOC in our Android App Development Specialization. This MOOC teaches you how to program core ...

Etiene da Cruz Dalcol: What I learned teaching programming to 150 beginners | JSConf EU 2015

A few months ago I was invited to give a workshop at Women's International Leadership Conference on Introduction to Programming. That was an amazing ...

John Ousterhout: "A Philosophy of Software Design" | Talks at Google

John Ousterhout, Professor of Computer Science at Stanford University, discusses complex techniques on how to become a more confident coder. John is ...

Building a Multiple Choice Quiz | Java | Tutorial 29

Giraffe Academy is rebranding! I've decided to re-focus the brand of this channel to highlight myself as a developer and teacher! The newly minted Mike Dane ...

1 1 3 MOOC Organization, Contents, and Strategies Vanderbilt University Coursera

Thanks for joining Java for Android, which is the first MOOC in our Android App Development Specialization. This MOOC teaches you how to program core ...