Skip to main content

Posts

Showing posts with the label Introduction

Coding and best practices

 Write code or write code in right way... Writing a coding solution to a problem can be done in many ways. If the solution can be obtained with less number of code lines, then it is easy to understand and maintain. But what if code is large with having millions of lines. Moreover maintenance and readability becomes difficult as the code base grows... Right?  In this blog I want to share my views and experiences on writing code efficiently and effectively with less maintenance efforts. Aspects to consider while coding: Naming convention Cyclomatic Complexity SOLID principles DRY Principle Managing dead code Comments Naming conventions: Every programming language mandates few norms in order to name variables, classes and functions etc. For ex: Java uses class names first letter to be a alphabet and rest to be lower case letters.  But if we dig little bit more, naming conventions are not limited to only upper case or lower case letters and using alphanumeric letters etc. Nam...

Atomicity with Java Programming Language

 Atomicity with Java What is Atomicity Atomicity, in computer science, is considered to be a property [ALL-OR-NOTHING], that the state of a resource in an operation is not controlled by a different flow of execution at the same time [Even in time slicing operations] We know, Java is not pure object oriented programming language, due to primitive data types' design behavior. Most of the Java experts, while designing and developing applications thrives hard, to create, most secured applications considering " Atomicity in multi threaded application". Does Java language helps in developing Secured application..? The answer is no, Java programming language does not give secured applications at all, especially in multi threaded environment. As we know, Java supports 2 types of variables/data types.  Primitive data types User defined data types Primitive data types:       Java supports 8 different primitive data types. They are:   boolean    1 ...

File IO operations with java programming language

File Management in OS File management includes files and folders creation, copy and paste operations, reading the file and writing into files and deleting the files and folders  And also reading meta data about files and folders. It may include file free space, occupied space and read/write permissions etc. These above operations are considered as file management and managed by respective operating system. GUI that represents Windows File Manager File Management with Java  Though Java is platform independent, programming language depends on native file IO resources of operating system. This is possible with the Java API support. These API are categorized into 2 types. Readers and Writers: Readers and writers does the IO operations, character by character InputStream and OutputStream: Where as InputStream and OutputStream does IO operations byte by byte Below are simple Java programs that demonstrates different File IO operations. Program for creating directory package com.all...

Java programming language and IDEs

IDE: Integrated Development Environment Integrated development environment, in short IDE is a convenient environment to write, execute and  debug the code or programs on a single platform. IDEs support not only writing code smoothly but also provides a provision to write scripts, XML files, simple text files and build scripts like Ant, Maven are few among others. In short IDEs are development environments to execute complete development activities using one application. IDEs and Editors IDEs and Editors fulfills the same purpose. That is writing code. But IDEs are glued or closely works with respective programming language's compilers, runtime environments, profilers and other language specific tools to put developer in a comfortable zone.  Some of the features of IDE: Auto completion Syntax Highlighting Code debugger Profilers Multipage editors Auto completion: Auto completion feature suggests APIs [methods, classes and interfaces] and keywords etc as we start typing in the e...

Core Java: Immutable objects and mutable objects with an example

Immutable objects and mutable objects with an example  In object oriented programming language, in short OOPS, every problem, precisely every requirement is viewed as an object. Understanding the problem in this point of view brings many good things possible in programming like encapsulation, abstraction, polymorphism and inheritance. Anyways this post is not intended for describing benefits of OOPS. Object could be any thing. Let us take Car  for an instance. Basically car is an object and it has name, wheels, metal body, engine, maximum speed,  gear box etc as properties. Let us consider the car name is Ferrari, maximum speed is 200 km per hr with 6 gears. While driving the car driver can change the speed of the car and change the gear etc. So while car is running it's current speed, current gear are considered to be state of the object. The current speed can be changed using accelerator and gear can be changed using gear box. These can be considered as ...