Thursday 8 May 2014

Different Programming Languages


C Language
                                I remember that the first programming language course that I had was of C language. Our instructor assigned us a task to add two numbers using C. And when we completed the task, we felt like the best programmers on earth. C is definitely a very good programming language to learn. C language was developed by Dennis Ritchie in 1972, at Bell labs. The legacy of C language stems from the fact that it is ancestor to many of the advanced programming languages such as C++, Java, C#, JavaScript, and Pearl.

C++ Language
                               Though C language was performing extremely well, it lacked object orientation. In order to address this issue, C++ language was developed in 1983 which is often considered object oriented version of C language. C++ is one of the most widely used languages of the world with many amazing applications developed through it. Google Chrome, Mozilla Firefox, Winamp, and the complete suite of Adobe Software were developed using C++. Apart from that, several advanced games and operating systems like windows – have been developed in C++ due to its quick processing and compilation mechanism.

Java
                         Java was developed by James Gosling, in 1990 at Sun Microsystems. Java further adds to the capabilities of C++ language. It is often said that Java owes a lot to C and C++ in terms of features and capabilities. The special thing about Java is that this is the first purely object oriented programming language. Java was developed on the principle of WORA i.e. “Write Once Run Anywhere”. This feature adds to the portability of Java. You just need to compile Java Source code once and then on any machine where JVM (Java Virtual Machine is installed), you can run that code irrespective of the underlying operating system and hardware. Java language is used to develop enterprise level application and video games; it can be employed to develop web based applications when used with JSP (Java Server Pages).

C# Language
                     C# belongs to the Microsoft’s family of programming language and was developed in 2000 to be the part of the first ever release of Microsoft’s prestigious .NET framework. C# is very similar to Java in terms of capabilities. It has been said that C# combines the robustness of C++ with the advanced features of Java. Therefore, if you are good at Java, it is extremely easy to switch to C# and vice-versa. C# language is used to develop almost all types of software applications that come with Visual Studio IDE. If you are developing a dynamic web based application in ASP.NET, you will be required to code in C# or VB to write backend handling mechanism. If you are developing a Windows form application or a Windows Presentation Foundation (WPF) Application, you will be required to code in C#. Similarly, if you are developing a windows phone application, again you will be required to code in C#.Keeping in view, the importance of the usage of C# in Microsoft’s application, you should definitely consider it if you are looking to develop applications for Windows-based platforms. 

Objective C
                        Objective-C was initially developed at Apple by Brad Cox and Tom Love, in 1983. The purpose of developing Objective-C programming language was to address the deficiencies in C language. The major shortcoming in C language was object orientation which provoked many developers to devise languages that incorporate object orientation paradigm. As a result C++ and Object-C were developed. However, the latter have gained immense popularity owing to its use in developing applications for Apple’s iPhone and iPad.
Sound knowledge of Objective-C would be helpful in landing you a job in companies that develop Apple based software applications. In addition to that, freelance industry also has huge demand for Objective-C coders across the globe.
  
PHP
                 PHP (Hypertext Preprocessor) is one of the most widely used languages used to develop dynamic websites. PHP was developed in 1995 and is a server-side scripting language which means that PHP code is processed on the server and end result is sent to the user of the website in the form of plain HTML. PHP is an open-source language which means that there are thousands of already built modules that can be modified to achieve the desired functionality. Also, PHP is easy to learn; you simply have to embed the code inside HTML. And if there was anything left, there are hundreds of PHP platforms available such as Joomla, WordPress, and Drupal that allow you to develop websites even more conveniently. PHP is also an integral part of the famous LAMP (Linux Apache MySQL and PHP) platform that Facebook, Yahoo, and other famous websites use. PHP has a huge job market.

JavaScript
                           Server side languages are ideal for developing complex web applications but performing every task on server puts lots of load on a server. For this reason, developers often delegate some part of the functionality to client side and for this purpose JavaScript is used. JavaScript is a client side programming language that runs inside a client browser and process commands on client computer rather than server which results in decreased load on server and increased application’s execution speed. JavaScript has been designed by Netscape and there is hardly any website that doesn’t make use of JavaScript.

Python
                   Python is another high-level programming language and is often considered on the easiest language to learn, owing to its simplicity, readability and straight forward syntax. Python was developed by Guido Van Rossum in 1991. Python wasn’t used that widely in the past; however, the language has seen great surge in popularity in the recent years owing to Google’s investment in the language in the past 10 years or so. Currently, some highly famous and robust sites are operating in python including pinterest.com, instagram.com, and rdio.com. Like, PHP, Python also has associated web frameworks which make it more convenient to develop web based applications in python. Django is one such platform which powers the sites aforementioned.

SQL
           SQL is not a development language; it is actually a database query language. SQL stands for Structured Query Language. SQL provides a standardized way of interacting with the underlying database of an application. SQL is extremely simple to learn and is probably closest to the English language in terms of syntax. Almost every application has a backend database and in order to interact with that you will need to have sound knowledge of SQL.

Ruby
                    Similar to Python, Ruby is also a simple and readable programming language mainly focused on developing web-based applications. Designed by Yukihiro Matsumoto in 1995, Ruby powers Ruby on Rails, a web development framework on which numerous renowned websites including Github, Scribd, Yammer, Shopify, and Groupon have been developed. Ruby is regarded as combination of some of the most famous features of Lisp, Pearl and Eiffel.







                  



Sunday 27 April 2014

Using lambda expressions can make your Java code leaner, more powerful, and easier to read

                          One of the recurrent, valid criticisms of Java as a programming language is that it is wordy. You have to write a lot of code to get anything done. Lambda expressions relieve that problem for some common cases and give Java useful facilities that have boosted rival C# for years.   Lambda expressions are new to Java SE 8, and in my opinion they are the most significant language feature debuting in this version. Lambda expressions provide a relatively clear and more concise way to represent a method interface using an expression. Lambda expressions also improve the Java Collections libraries, making it easier to iterate through, filter, and extract data from Collections. New concurrency features enabled by lambda expressions improve Java runtime performance in multicore environments, which applies to the vast majority of new devices and computers.


Thursday 24 April 2014

WATERPROOF GLASS DISK


    Hitachi invents waterproof glass 'disk' that can store data forever:

- Hitachi has printed data upon a 2 square centimeter piece of glass that is waterproof, fireproof, and capable of securing any kind of data well into the future.

- Developed by Hitachi, the technology prints a binary series of dots upon a sliver of quartz glass which can then be easily read with a common microscope.

- It sounds simple enough, and that is exactly the point – the data can be easily accessed no matter what the future technologies of the digital age bring.

- Even better, the data is safe from fire, chemicals, and water – almost anything, except perhaps a hammer.?
TOP JAVA FRAMEWORKS
                   
                                  There are tons of websites or web applications live in today’s date which might have been made using certain “Java framework”. You might have even heard that these frameworks are available on different technology platforms like .NET and JAVA and are becoming quite popular these days because of the increasing demand of developing websites and web applications.
                              Web frameworks are not like conventional content management systems or any other platform, they’re software frameworks that support in the development of dynamic websites and web applications. When it comes to Java, there are several web frameworks available in the market and developers use them to create a variety of websites or web applications.
                                If you look at the popularity of Java web frameworks in the past few years, you will be surprised by seeing the stats! Of course, these Java web frameworks offer great assistance while developing websites and web applications, the problem is that the developers often find it difficult to make the right choice of the framework for their development project and often get confused as to which framework will the suit the development requirements best.
        
Spring

          The spring framework is an efficient open source framework that is in existence from March 2004. The major releases of spring framework include spring 1.0, spring 2.0, spring 2.5 ,spring 3.0 and spring4.1.0 GA. The spring community is efficiently working on new releases which offer new features and bug fixes for the earlier spring framework releases.
The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform. A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.

Hibernate


                  Hibernate is an open source object/relational mapping tool for Java. Hibernate lets you develop persistent classes following common Java idiom - including association, inheritance, polymorphism, composition and the Java collections framework.
         Hibernate not only takes care of the mapping from Java classes to database tables (and from Java data types to SQL data types), but also provides data query and retrieval facilities and can significantly reduce development time otherwise spent with manual data handling in SQL and JDBC.
        Hibernates goal is to relieve the developer from 95 percent of common data persistence related programming tasks.

 Struts
            
Apache Struts is yet another Java web framework that is an open source solution, helping developers to create amazing Java web applications. It is based on the MVC architecture and helps developers get rid of ActionForms! However, one of the bitter facts about Struts is that you have to do a lot of configuration in order to start the prototyping.The recent version Struts 2.3.16 has brought tons of new enhancements to make this framework more powerful and to make it more compatible to create enterprise-ready Java web applications.

 GWT

            Want to tweak JavaScript and browser’s DOM? If yes, GWT (Google Web Toolkit) is here to help you out! Google Web Toolkit is a development toolkit that can help Java developers build and optimize complicated browser-based applications. If you’re not expert in browser quirks, XMLHttpRequest and JavaScript, then it’s cool! You can still develop high performance web applications, and that’s the main capability of GWT making it unique from the rest of the other Java web framework.

Grails

               It is an open source web framework that is using the Groovy programming language and built upon the frameworks like Hibernate, Spring and GORMS. “Simplicity” is one of the major reasons why it is favorite among the developers. Quick set up and scaffolding helps developers save a lot of time and that is why many service providers offer Grails development services.It allows developers to use the same code repeatedly in order to carry out different operations. Also, it simplifies the XML parsing. Another point is that, Grails has Enterprise Java Beans or EJB support which attracts developers or enterprises to use Grails.

Vaadin
                 
                     If you think about the UI in Java application, think Vaadin! Vaadin is rapidly becoming a popular Java framework for creating modern web applications that look appealing while performing well and help you make your target audience feel amazing. Vaadin aims to be the best possible tool when it comes building web user interfaces for the business applications.

 
 


JAVA WEB FRAMEWORKS COMPARISON

                              Individually the top 8 most popular Java Web Frameworks are get compared as a feature-by-feature level and got a result as..
 focus on the application and test use cases with varying application types to determine which frameworks are best suited for that app. Each application type will have different needs, requirements and functional priorities, so the feature areas we looked at in the first report and the two additional parts in this report will be scaled differently. This means we can suggest which framework(s) would be more appropriate than others for different types of applications.



Wednesday 23 April 2014