background preloader

Application Development

Facebook Twitter

NLM APIs. An Application Programming Interface (API) is a set of routines that an application uses to request and carry out lower-level services performed by a computer's operating system. For computers running a graphical user interface, an API manages an application's windows, icons, menus, and dialog boxes. We invite you to develop computer and mobile applications using National Library of Medicine (NLM) resources. We request that any application that makes use of NLM data include the following statement: "This product uses publicly available data from the U.S.

National Library of Medicine (NLM), National Institutes of Health, Department of Health and Human Services; NLM is not responsible for the product and does not endorse or recommend this or any other product. " Service-oriented architecture. See also the client-server model, a progenitor concept A Service-Oriented Architecture (SOA) is a design pattern in which software/application components provide services to other software/application components via a protocol, typically over a network and in a loosely-coupled way.

Service-oriented architecture

Service Component Architecture. Service Component Architecture (SCA) is a software technology created by major software vendors including IBM, Oracle and TIBCO.

Service Component Architecture

SCA provides a model for composing applications that follow Service-Oriented Architecture principles.[1] The technology encompasses a wide range of disparate technologies and as such is specified in various independent specifications in order to maintain programming language and application environment neutrality.[1] Partners[edit] Partner vendors include: WebSphere Application Server V7 Feature Pack for Service Component Architecture - FAQ.

What is Service Component Architecture?

WebSphere Application Server V7 Feature Pack for Service Component Architecture - FAQ

Service Component Architecture (SCA) was conceived through industry collaboration to provide a language-neutral programming model for building applications based on Service Oriented Architecture. First published in 2005, the Open SOA Collaboration ( finalized the SCA 1.0 specification and submitted to OASIS for standardization in March 2007. Open SOA Collaboration. Last month an alliance of leading vendors announced progress on specifications to define a language-neutral programming model for application development in SOA environments. They call this specification Open SOA Collaboration. In essence, they are proposing a new standard to create and manage IT, making the process of integrating different third-party SOA technologies "less onerous," they say. OASIS (organization) OASIS. OASIS SOA Reference Model. A reference model in systems, enterprise, and software engineering is an abstract framework for understanding significant relationships among the entities of some environment, and for the development of consistent standards or specifications supporting that environment.

OASIS SOA Reference Model

A reference model is based on a small number of unifying concepts and may be used as a basis for education and explaining standards to a non-specialist. A reference model is not directly tied to any standards, technologies or other concrete implementation details, but it does seek to provide a common semantics that can be used unambiguously across and between different implementations. The Reference Model for SOA is a lexicon that captures the style of architecture known as SOA. Description[edit] History[edit] Advancing open standards that simplify SOA application development. Aspect-oriented programming. AOP includes programming methods and tools that support the modularization of concerns at the level of the source code, while "aspect-oriented software development" refers to a whole engineering discipline.

Aspect-oriented programming

Logging exemplifies a crosscutting concern because a logging strategy necessarily affects every logged part of the system. Logging thereby crosscuts all logged classes and methods. History[edit] AOP has several direct antecedents A1 and A2:[1] reflection and metaobject protocols, subject-oriented programming, Composition Filters and Adaptive Programming.[2] Gregor Kiczales and colleagues at Xerox PARC developed the explicit concept of AOP, and followed this with the AspectJ AOP extension to Java. The Microsoft Transaction Server is considered to be the first major application of AOP followed by Enterprise JavaBean.[3][4] Motivation and basic concepts[edit] AspectJ Development Tools (AJDT) Integrated development environment.

An integrated development environment (IDE) or interactive development environment is a software application that provides comprehensive facilities to computer programmers for software development.

Integrated development environment

An IDE normally consists of a source code editor, build automation tools and a debugger. Most modern IDEs offer Intelligent code completion features. Overview[edit] One aim of the IDE is to reduce the configuration necessary to piece together multiple development utilities, instead providing the same set of capabilities as a cohesive unit. Eclipse. Java - eclipse view classes dependency graph plugin. Osx - Open multiple Eclipse workspaces on the Mac. If the question is how to easily use Eclipse with multiple different workspaces, then you have to use a kludge because shortcuts in OS X do not provide a mechanism for passing command line arguments, for example the "--data" argument that Eclipse takes to specify the workspace.

osx - Open multiple Eclipse workspaces on the Mac

While there may be different reasons to create a duplicate copy of your Eclipse install, doing it for this purpose is, IMNSHO, lame (now you have to maintain multiple eclipse configurations, plugins, etc?). In any case, here is a workaround. Create the following script in the (single) Eclipse directory (the directory that contains, and give it a ".command" suffix (e.g. eclipse-workspace2.command) so that you can create an alias from it: #! Java (programming language) Duke, the Java mascot Sun Microsystems released the first public implementation as Java 1.0 in 1995.[1] It promised "Write Once, Run Anywhere" (WORA), providing no-cost run-times on popular platforms.

Java (programming language)

Fairly secure and featuring configurable security, it allowed network- and file-access restrictions. Major web browsers soon incorporated the ability to run Java applets within web pages, and Java quickly became popular. With the advent of Java 2 (released initially as J2SE 1.2 in December 1998 – 1999), new versions had multiple configurations built for different types of platforms. For example, J2EE targeted enterprise applications and the greatly stripped-down version J2ME for mobile applications (Mobile Java). The switch Statement (The Java™ Tutorials > Learning the Java Language > Language Basics) Unlike if-then and if-then-else statements, the switch statement can have a number of possible execution paths.

The switch Statement (The Java™ Tutorials > Learning the Java Language > Language Basics)

A switch works with the byte, short, char, and int primitive data types. It also works with enumerated types (discussed in Enum Types), the String class, and a few special classes that wrap certain primitive types: Character, Byte, Short, and Integer (discussed in Numbers and Strings). The following code example, SwitchDemo, declares an int named month whose value represents a month. The code displays the name of the month, based on the value of month, using the switch statement. In this case, August is printed to standard output. Concurrency (The Java™ Tutorials > Essential Classes) Computer users take it for granted that their systems can do more than one thing at a time.

Concurrency (The Java™ Tutorials > Essential Classes)

They assume that they can continue to work in a word processor, while other applications download files, manage the print queue, and stream audio. Even a single application is often expected to do more than one thing at a time. For example, that streaming audio application must simultaneously read the digital audio off the network, decompress it, manage playback, and update its display.

Even the word processor should always be ready to respond to keyboard and mouse events, no matter how busy it is reformatting text or updating the display. Software that can do such things is known as concurrent software. JUnit. Copyright © 2007, 2008, 2009, 2010, 2011, 2012 Lars Vogel Unit testing with JUnit This tutorial explains unit testing with JUnit 4.x. It explains the creation of JUnit tests and how to run them in Eclipse or via own code.

Collection. . If you want your message, your name or email kept confidential, not considered for public posting, please explicitly specify that. HCI. Web development. Web application framework. History[edit] Around the same time, full integrated server/language development environments first emerged, such as WebBase and new languages specifically for use in the web started to emerge, such as ColdFusion, PHP and Active Server Pages. Types of framework architectures[edit] Most web application frameworks are based on the model–view–controller (MVC) pattern. Ruby on Rails. Ruby on Rails. Spring Framework. The Spring Framework is an open source application framework and inversion of control container for the Java platform.

The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform. Although the framework does not impose any specific programming model, it has become popular in the Java community as an alternative to, replacement for, or even addition to the Enterprise JavaBean (EJB) model. Version history[edit] Modules[edit] JavaScript. Orion: Tools for the web, on the web. Driving Simulation. Advanced Driving Simulators developed by Tecknotrove bus simulator used for training & assessment of bus drivers on Fuel Efficient Driving Portable In-vehicle Driving Simulator developed by Drive Square LLC, a low-cost driving simulator for training and assessment, utilizing an actual vehicle and an augmented realityhead-mounted display (HMD). 2006.

Driving simulators are used for entertainment as well as in training of driver's education courses taught in educational institutions and private businesses. STISIM Drive® 2011. Programming languages. The earliest programming languages preceded the invention of the digital computer and were used to direct the behavior of machines such as Jacquard looms and player pianos.[1] Thousands of different programming languages have been created, mainly in the computer field, and many more still are being created every year. Many programming languages require computation to be specified in an imperative form (i.e., as a sequence of operations to perform), while other languages utilize other forms of program specification such as the declarative form (i.e. the desired result is specified, not how to achieve it).

Google programming languages failing to gain traction. Oracle, Microsoft, and Apple all have a programming language ranked prominently in an industry index that monitors language use, but Google's efforts have yet to yield results, according to an official with Tiobe, which publishes the monthly Tiobe Programming Community Index. In the March index, released over the weekend, Google saw its Go language drop out of the top 50 while Google's Dart language was ranked 78th. Oracle's Java language ranked first, used by 17.1 percent of developers, while Microsoft's C# came in at the third spot, used by 8.24 percent of developers. TIOBE Software: Tiobe Index.

Apple. Develop for Mac OS X. Developer Tools Overview. How to make your own Dashboard Widget with Dashcode. Source code repository. Log In to SourceForge. Crowd soucing internet marketplace. Amazon Mechanical Turk. Amazon Mechanical Turk - Welcome. Security. Secure coding. Secure Coding. MapReduce. Welcome to Hadoop™ MapReduce! Performance.