Path Set For Java And Javac (Java Compiler ). If You Save Java Source File In Jdk/Bin Directory Then No Need Path Setup But If You Save Another Directory Then You Need To Path VAriable Set In This Way For Permanent Path .
MyComputer properties -> advanced tab -> environment variables -> new tab of user variable -> write path in variable name -> write path of bin folder in variable value -> ok -> ok -> ok
1) Go to MyComputer properties
2) Click on the advanced tab
3) Click on environment variables
4) Click on the new tab of user variables
5) Write the path in the variable name
6) Copy the path of bin folder
8) Click on ok button
9) Click on ok button
Now your permanent path is set. You can now execute any program of java from any drive.
1 Open Eclipse With Your Eclipse WorkSpace
2. File -> New -> Java Project ->Project Name (Example Name As Student )And Next And Finish
3. Create Java Class And Fill Source Folder Student/src. Package Name Your Choice Example student.name.And Class Name example Student.ok
4 Implement Main Method And Main Function For Output.
emailEditText = (EditText) findViewById(R.id.editText_email);
passEditText = (EditText) findViewById(R.id.editText_password);
//Perform when need;
final String email = emailEditText.getText().toString();
if (!isValidEmail(email)) {emailEditText.setError("Invalid Email");}
final String pass = passEditText.getText().toString();
if (!isValidPassword(pass)) {passEditText.setError("Invalid Password");}
initilize method after oncreate block
// validating email id
private boolean isValidEmail(String email) {
String EMAIL_PATTERN = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";
Pattern pattern = Pattern.compile(EMAIL_PATTERN);
Matcher matcher = pattern.matcher(email);
return matcher.matches();
}
// validating password with retype password
private boolean isValidPassword(String pass) {
if (pass != null && pass.length() > 6) {
return true;
}
return false;
}
Email & Password Validation
android-check-empty-edittext
input = (EditText) findViewById(R.id.editText1);
if(input.getText().toString().equals(""))
{
Toast.makeText(MainActivity.this, "Input Text Is Empty.. Please Enter Some Text", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(MainActivity.this, "Input Text is Not Empty", Toast.LENGTH_SHORT).show();
}
GetEditText = edittext.getText().toString();
if(TextUtils.isEmpty(GetEditText)){
Toast.makeText(MainActivity.this, "EditText is Empty", Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(MainActivity.this, "EditText is Not Empty", Toast.LENGTH_LONG).show();
}
Recycler view is a more advanced version of listview and works based on View holder design pattern. Using recyclerview we can show grids as well as a list of items.
This example demonstrates how to integrate RecyclerView by creating a beautiful student records app that displays student name with age.
Step 1 − Create a new project in Android Studio, go to File ⇒ New Project and fill all required details to create a new project.
Step 2 − Open build.gradle and add Recycler view library dependency.
In the above code, we have added a recycler view and studentAdapter. In that student adapter, we have passed studentDatalist as ArrayList. In Student, data list contains the name of the student and age.
Step 5 − Following is the content of the modified file src/ StudentAdapter.java.
package com.example.andy.tutorialspoint;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.util.List;
class StudentAdapter extends RecyclerView.Adapter {
List studentDataList;
public StudentAdapter(List studentDataList) {
this.studentDataList=studentDataList;
}
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View itemView = LayoutInflater.from(viewGroup.getContext())
.inflate(R.layout.student_list_row, viewGroup, false);
return new MyViewHolder(itemView);
}
@Override
public void onBindViewHolder(MyViewHolder viewHolder, int i) {
studentData data=studentDataList.get(i);
viewHolder.name.setText(data.name);
viewHolder.age.setText(String.valueOf(data.age));
}
@Override
public int getItemCount() {
return studentDataList.size();
}
class MyViewHolder extends RecyclerView.ViewHolder {
TextView name,age;
public MyViewHolder(View itemView) {
super(itemView);
name=itemView.findViewById(R.id.name);
age=itemView.findViewById(R.id.age);
}
}
}
In the adapter class, we have four methods as shown below –
onCreateViewHolder() – It is used to create a view holder and it returns a view.
onBindViewHolder() – it going to bind with created view holder.
getItemCount() – it contains size of list.
MyViewHolder class– it is view holder inner class which is extended by RecyclerView.ViewHolder
Step 6 − Following is the modified content of the xml res/layout/student_list_row.xml.
In the above list item view, we have created two text views for name and age.
Step 7 − Following is the content of the modified file src/ studentData.java.
package com.example.andy.tutorialspoint;
class studentData {
String name;
int age;
public studentData(String name, int age) {
this.name=name;
this.age=age;
}
}
In the above code informs about student data object. Let’s try to run your application. I assume you have connected your actual Android Mobile device with your computer. To run the app from the android studio, open one of your project’s activity files and click Run icon from the toolbar. Select your mobile device as an option and then check your mobile device which will display your default screen −
ক্লাউড কম্পিউটিং কি? ধরুন আপনার এখন ডাটা ভিজুয়ালাইজেশনের জন্য ম্যাটল্যাব সফটওয়্যাটি দরকার কিন্তু আপনার পিসিতে তা নেই । তাই আপনি ইন্টারনেটের মাধ্যমে কোন একটি সার্ভিস প্রভাইডারের কাছে ফ্রি অথবা অর্থের বিনিময়ে কানেক্ট হবেন যা আপনাকে ম্যাটল্যাব সফটওয়্যাটির ইনভাইরনমেন্ট দেবে ব্যবহারের জন্য ।
অথবা, আপনার ১৬/ ৩২ কোর প্রসেসরের প্রসেসিং পাওয়ার দরকার হতে পারে কোন বড় ক্যালকুলেশনের জন্য কিংবা মেশিন লার্নিং এর বড় কোন মডেল রান করার জন্য , যা আপনার / আমার মত গরিবের পক্ষে দিবাস্বপ্নের মত । কিন্তু সেই জন্য কি আমরা মেশিন লার্নিং শিখতে পারবো না ? অবশ্যই পারবো । আর এই জন্য আমরা ক্লাউড কম্পিউটিং এর মাধ্যমে (সাধারন পিসি থেকেই) কমমূল্য দিয়েই (হয়ত ঘন্টা হিসেবে) ঐ সার্ভিস পেতে পারি নেটওয়ার্কের মাধ্যেমে কানেক্টেড থেকে।
এটাই হলো ক্লাউড কম্পিউটিং। এটি একটি ভার্চুয়াল কম্পিউটার। অর্থাৎ কম্পিউটার এর যন্ত্রাংশ আপনি দেখতে পাবেন না কিন্তু যেকোনো স্থান থেকে এবং যেকোনো কম্পিউটিং ডিভাইজ থেকে একে রিমোট কন্ট্রোল এর মতো করে ব্যবহার করতে পারবেন। যেখানে আপনি ইচ্ছা মতো কনফিগারেশন করতে পারবেন এবং সকল উচ্চ মান এর কাজ করতে পারেন ইন্টারনেট সংযোগ এর মাধ্যমে। এখানে আপনি হাজার হাজার তথ্য সংরক্ষন করে রাখতে পারবেন। এমন সব কিছুই করতে পারবেন যা আপনার টেবিলে থাকা কম্পিউটার টি দিয়ে আপনি করেন। আপনার শুধু দরকার হবে একটি ইন্টারনেট সংযোগ।
তাহলে এককথায় ক্লাউড কম্পিউটিং হলঃ কম্পিউটারের রিসোর্স গুলো মানে হার্ডওয়্যার এবং সফটওয়্যার এর সার্ভিস গুলো নেটওয়ার্ক এর মাধ্যমে প্রদান করা
ইউজার এর উপর ভিত্তি করে ক্লাউড কম্পিউটিং মূলত ৪ ধরনের হয়ে থাকেঃ
1. Public cloud: এক ধরনের ক্লাউড সার্ভিস যা সাধারন জনগন ব্যবহার করতে পারবে। 2. Private cloud: যেটা শুধু কোন নির্দিষ্ট প্রতিষ্ঠানের জনগন ব্যবহার করতে পারবে। 3. Hybrid cloud: এটা পাবলিক এবং প্রাইভেট দুইটার সংমিশ্রণে তৈরি। 4. Community cloud: এটা একাধিক প্রতিষ্ঠান ব্যবহার করতে পারবে।
সার্ভিসের উপর ভিত্তি করে ক্লাউড কম্পিউটিং কে তিন ভাগে ভাগ করা যেতে পারেঃ
1. IaaS (Infrastructure-as-a-Service): এতে অবকাঠামো বা Infrastructure ভাড়া দেয়া হয়। যেমন, কারো যদি একটা মেশিন লাগে তার কাজের জন্য তাহলে ভার্চুয়ালি সেই মেশিন ভাড়া দেয়া হয় কিংবা নেটওয়ার্কিং সেবা দেয়া হয়। 2. PaaS (Platform-as-a-Service): এতে প্লাটফর্ম ভাড়া দেয়া হয়। যেমনঃ অপারেটিং সিস্টেম, ডাটাবেজ কিংবা কোনো সার্ভার বা মনিটরিং সিস্টেম। 3. SaaS (Software-as-a-Service): এটা হচ্ছে ক্লাউডে চলা কোনো সফটওয়ার যেটা ইউজাররা ইন্টারনেটের মাধ্যমে সরাসরি ব্যবহার করতে পারেন তাদের মোবাইল ফোন কিংবা পিসির সাহায্যে। এদের এক কথায় ওয়েব সার্ভিস ও বলা যায়।
ক্লাউড কম্পিউটিং এর সুবিধাঃ
কম খরচঃ যেহেতু এতে আলাদা কোন সফটওয়্যার কেনার প্রয়োজন হয় না বা কোন হার্ডওয়্যার এর প্রয়োজন হয় না। তাই স্বাভাবিক ভাবে খরচ কম হবেই।
সহজে ব্যবহারঃ ক্লাউড কম্পিউটিং এর কাজ গুলো যেকোনো স্থানে বসেই মোবাইলের মাধ্যমে কন্ট্রোল করা যায় তাই এটা সহজে ব্যবহার যোগ্য।
সফটওয়্যার ব্যবহার: ক্লাউড কম্পিউটিং এর মাধ্যমে অনেক উচ্চমান সম্পূর্ণ কাজ করা সম্ভব। এবং প্রয়োজনীয় সকল সফটওয়্যার ব্যবহার করা সম্ভব যা হয়তো আপনাকে আলাদা টাকা দিয়ে কিনতে হতে পারত।
অটো সফটওয়্যার আপডেটঃ ক্লাউড কম্পিউটিং এর সফটওয়্যার গুলো আপনার আপডেট করার প্রয়োজন নেই। এগুলো অটো আপডেট হয়ে থাকে। তাই আলাদা ভাবে এটা মেইনটেন্স এর খরচ লাগে না।
যতটুকু ব্যবহার ততটুকু খরচঃ ক্লাউড কম্পিউটিং এ আপনি যত টুকু ব্যবহার করবেন শুধু মাত্র ততটুকুর জন্য পয়সা আপনাকে দিতে হবে। যেটা কিনা ডেস্কটপ কম্পিউটিং এ সম্ভব না।
ডকুমেন্ট কন্ট্রোলঃ মনে করুন কোন একটা অফিসে যদি ক্লাউড কম্পিউটিং না ব্যবহার করে তবে সেই অফিসের ডকুমেন্ট সমূহ কন্ট্রোল করতে বা এক স্থান থেকে অন্য স্থানে নেবার জন্য আলাদা লোকের প্রয়োজন হবে কিন্তু ক্লাউড কম্পিউটিং এ সেই ধরনের কোন সমস্যা নেই। অতিরিক্ত লোক ছারাই সকল ডকুমেন্ট কন্ট্রোল করা যায়।
ডাটা সংরক্ষন: একসাথে অনেক ডাটা সংরক্ষন করা সম্ভব। এবং সেই ডাটা কখনই হারিয়ে যাবে না বা নষ্ট হয়ে যাবে না। ক্লাউড কম্পিউটিং কোম্পানি গুলোর অনেক ডাটা সেন্টার থাকে। তাই আপনার ডাটা নিয়ে আপনাকে কনো চিন্তা করতে হবে না।
সিকিউরঃ আপনার চেয়ে আপনার ডাটার সিকিউরিটি বেশি আপনি গুম হয়ে যাইতে পারেন যেকোনো মুহূর্তে কিন্তু আপনার ডাটা গুম হওয়ার ভয় নেই। আপনার যদি অনেক বেশি ডাটা থাকে আপনি হয়ত আলাদা হার্ডডিস্ক ব্যবহার করে ব্যাক আপ রাখলেন। কিন্তু সেই হার্ডডিস্ক যে ক্র্যাশ করবেনা সেই গ্যারান্টি নাই। আবার অন্য কোনোভাবেও আপনি ডাটা হারিয়ে ফেলতে পারেন। কিন্তু ক্লাউডে আপনার এই ভয় নেই। আপনার ডাটা রক্ষার গ্যারান্টি ক্লাউড আপনাকে দিবে। সুতরাং এই সুযোগে আপনি নিজের দিকে একটু বেশি খেয়াল রাখার সময় ও পাবেন।
ক্লাউড কম্পিউটিং এর অসুবিধা:
১। আপনার তথ্য যদি ক্লাউডে রাখেন, তাহলে সেই তথ্যের গোপনীয়তা ভঙ্গের সম্ভাবনা থাকে। আপনার মহামুল্যবান তথ্য আরেক জনের হাতে তুলে দিচ্ছেন সে যে আপনার তথ্য নিয়ে গবেষণা করবে না তার কি গারান্টি আছে ? তবে সব কম্পনির ক্ষেত্রে এটা সঠিক নয়। ২। তথ্য করাপ্টেড হয়ে যেয়ে পারে নিমিষে। ৩। পর্যাপ্ত নিরাপত্তা নাও থাকতে পারে । ৪। তথ্য ফাঁস হবার সম্ভাবনা।
ক্লাউড কম্পিউটিং এর কয়েকটি জনপ্রিয় অ্যাপ্লিকেশন এবং সার্ভিসঃ
Outright: হল একটি ফাইনান্স অ্যাপ্লিকেশন। এটা ছোট খাট বিজনেসের আকাউন্ট এর কাজে ব্যবহার করা হয়। বিজনেসের প্রফিট, লস, আয়, ব্যয় ইত্যাদির খরচ খুব সহজে করা যায়। Google Apps; গুগল অ্যাপস অনেক সুবিধা দেয় যেমনঃ ডকুমেন্ট তরি করা, স্প্রেডশিড তৈরি, স্লাইড শো তৈরি, ক্যালেন্ডার মেইনটেন্স, পার্সোনাল ইমেইল ইত্যাদি তৈরি করার সুবিধা দেয়। Evernote: প্রতিষ্ঠানের বিভিন্ন নোট সমূহ খুব সহজে কন্ট্রোল করা, ব্যবহার করা, যেকোনো স্থানে যেই নোট সমূহ ব্যবহার করাতে Evernote খুবই উপকারি। Quickbooks; Quickbooks এক ধরনের একাউন্ট সার্ভিস। এর মাধ্যমে ক্যাশ নিয়ন্ত্রন করা, বাজেট তৈরি, বিজনেস রিপোর্ট তৈরি ইত্যাদির কাজে খুব ভাল সাপোর্ট দেয়। Toggl; এটি একটি টাইম ট্র্যাকিং অ্যাপলিকেশন। মূলত প্রোজেক্ট কন্ট্রোল এবং টাইমিং এর জন্য এটা ব্যবহার করা হয়। প্রোজেক্ট তৈরিতে কত সময় লাগলো, কোন খাতে কতটুকু সময় সকল হিসাব এর মাধ্যমে জানা যায়। Skype; Skype কম্পিউটার কে ফোনে রূপান্তর করে ফেলেছে। বিশ্বের যেকোনো স্থান থেকে কম্পিউটার এর মাধ্যমে কথা বলা, ভিডিও চ্যাট করা ইত্যাদির সুবিধা দিচ্ছে। DropBox; অনেক দরকারি একটি সার্ভিস। ভার্চুয়াল হার্ডডিস্কও বলতে পারেন। মানে আপনি যেকোনো ধরনের ফাইল রাখতে পারবেন এবং সেটা যেকোনো পিসি থেকে কন্ট্রোল করতে পারবেন খুব সহজে। অন্যের সাথে শেয়ার করতে পারবেন।