برنامه نویسی

جمع آوری اطلاعات ، انتقال ، به روز رسانی، تبادل

برنامه نویسی

جمع آوری اطلاعات ، انتقال ، به روز رسانی، تبادل

برنامه نویسی

این وبلاگ جهت تبادل و ارائه اطلاعات پیرامون مباحث برنامه نویسی (بیشتر جاوا) و فناوری اطلاعات ایجاد شده و اطلاعاتی در همین باره به علاقه مندان میدهد. امید بر آن، که این حرکت مفید واقع شود...

مطالب پیشنهادی

آموزش برنامه نویسی جاوا

می تونید از طریق سایتمون مارو دنبال کنید

آموزش برنامه نویسی جاوا

سورس کد های جاوا

برای ورود به it3du اینجا کلیمک کنید

می تونید توی کانال تلگرام "کتاب های تخصصی برنامه نویسی" عضو بشید و کتاب های مورد نظر به زبان فارسی و انگلیسی در حوزه های مختلف برنامه نویسی رو دانلود کنید

 

 

برای عضویت در کانال تلگرام کتاب های تخصصی برنامه نویسی اینجا کلیک کنید

 
 
 
۲ نظر موافقین ۰ مخالفین ۰ ۲۴ ارديبهشت ۹۶ ، ۲۲:۱۷
مرتضی

از این به بعد به سایت ما مراجعه کنید. تمام آموزش ها و مقالات این وبلاگ به سایت it3du انتقال پیدا کرده و مطالب جدید و به روز رسانی ها در سایت اصلی انجام می شود.

برای استفاده از آموزش های برنامه نویسی و کامپیوتر می توانید از سایت it3du.ir استفاده کنید...

محتوای آموزشی و بروز می تواند در پیشرفت شما، در رشته کامپیوتر موثر باشد.

آموزش های it3du برنامه نویسی زبان هایی مانند جاوا، سی پلاس پلاس و پایتون می باشد و به مرور زمان این آموزش ها تکمیل می شوند. 

اخبار روز دنیای فناوری اطلاعات رو می تونین توی این سایت بخونید و مطالب رو در صورت پسند توی شبکه های اجتماعی به اشتراک بزارید...

سایت it3du در زمانی که این پست رو به وبلاگ اضافه کرده ایم تازه شروع به کار کرده است و جای بسی پیشرفت در این سایت دیده میشه که با تلاش مدیران سایت این امر در آینده محقق می شود.

ورود به سایت


it3du را دنبال کنید...


۰ نظر موافقین ۰ مخالفین ۰ ۲۴ اسفند ۹۴ ، ۱۹:۴۶
مرتضی

اولین برنامه JavaFX در محیط برنامه نویسی netbeans رو ایجاد می کنیم و توضیحات برنامه رو ارائه میدیم.

از منوی File گزینه New Project رو انتخاب کنین.

در پنجره باز شده از کادر category گزینه JavaFX رو و از کادر Projects گزینه JavaFX Application رو انتخاب کنید و دکمه next را انتخاب کنید.

در مرحله بعدی باید تنظیمات و نام پروژه رو انتخاب کنین . دکمه Finish رو انتخاب کنین.

اگه محیط نت بینز شما از ساختن پروزه JavaFX پشتیبانی نمیکند می تونین از پروژه جاوا معمولی استفاده کنین. تنها تفاوت بین ایجاد کردن این دو پروژه این هستش که به صورت پیش فرض یک کلاس اجرایی با یک فریم JavaFX به صورت زیر ایجاد می کنه.

کتابخانه های JavaFX در کتابخانه های استاندارد جاوا موجود هستند. بنابراین با ایجاد پروژه جاوا می تونین برنامه های کاربردی JavaFX رو ایجاد کنین.


کلاس اصلی برنامه که متد main در اون قرار داره باید از کلاس Application ارث بری کنه.کلاس Application در پکیج زیر قرار داره 

javafx.application.Application

۰ نظر موافقین ۰ مخالفین ۰ ۱۴ مرداد ۹۴ ، ۱۵:۴۱
مرتضی

جاوااف‌اکس (به انگلیسی: JavaFX) سکوی جاوایی است که برای خلق و تحویل کاربردهای غنی اینترنتی که بتواند در پهنهٔ وسیعی از دستگاه‌های متصل به اینترنت اجرا گردد. تگارش کنونی آن توسعه دهندگان را قادر به ساخت برنامه برای محیطهایرایانه رایانه رومیزی، دستگاه‌های بازی ویدیویی، پخش کننده‌های بلوری، و سایر سکوها را شامل می‌شود.

 

جاوااف ایکس، بر مبنای فناوری جاوا ایجاد گردیده است. در نگارش رایانه رومیزی، هم اکنون از سیستم عامل‌های ویندوز اکس‌پی، ویندوز ویستا، مکینتاش، پشتیبانی می‌نماید. در نگارش جاوا اف ایکس ۱٫۲، سان نسخه‌های اولیه‌ای را برای لینوکس و اپن سولاریس ارایه نمود.

در نگارش موبایل، جاوا اف ایکس، قابلیت اجرایی در سیستم عامل‌هایی چون، سیمبیان، ویندوز موبایل، و سیستم عامل‌های بی درنگ را داراست.

 

نگارش کنونی این سکو، شامل اجزا زیر است:

 

کیت توسعه نرم‌افزار جاوا اف ایکس: که شامل کامپایلر، ابزار زمان اجرایی، گرافیکی، خدمات رسانه‌ای وب و کتابخانه غنی متنی است.

محیط توسعه نتبینز برای جاوا اف ایکس: نتبینز امکام اضافه کردن با استفاده از صفحه‌ای برای کشیدن و رها کردن برای اضافه نمودن اشیایی با قابلیت حرکت، پویانمایی و همچنین مجموعه از نمونه‌ها و مثالها برای یادگیری. برای اکلیپس، افزونه‌ای تحت حمایت پروژه کنایی وجود دارد.

ابزارها و افرونه‌هایی برای کارهای خلاق: افزونه‌هایی برای تبدیل گرافیک موجود در ادوب فوتوشاپ و ادوب ایلسفقیتور به کدهای جاوا اف ایکس را داراست. ابزارهایی برای تبدیل اس وی جی به کدهای جاوا اف ایکس.

صاحب نظران بر این باورند که این محصول در بازار سامانه‌های رایانه رومیزی، با محصولاتی چوت ادوب فلش پلیر، ادوبی ایر، اپن لاسزلو و سیلورلایت مایکروسافت، در رقابت خواهد بود.

منبع این مقاله : ویکی پدیا
برای دسترسی به مقاله کامل در ویکی پدیا اینجا کلیک کنید.
در مقاله بعدی ایجاد یک برنامه با JavaFX رو توی محیط نت بینز ایجاد می کنیم.
۰ نظر موافقین ۰ مخالفین ۰ ۱۴ مرداد ۹۴ ، ۱۴:۳۸
مرتضی

با استفاده از این سورس کد می تونین روی فریم ایجاد شده یک رویداد ماوس قرار بدین که مختصات ماوس رو فریم را مشخص کند و خط را برای شما رسم کند...

۱ نظر موافقین ۰ مخالفین ۰ ۲۲ تیر ۹۴ ، ۲۲:۵۳
مرتضی

استفاده از Lambda کار تسهیل در کد نویسی را می کند. به کد زیر که یک Action را برای یک button ایجاد می کند

button.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        System.out.println("Button clicked");
       }
});

با استفاده از Lambda می توان به صورت زیر نوشت :

که دیگه نیازی به پیاده سازی متد actionPerformed نیست و حجم کد کمتر میشه

button.addActionListener((ActionEvent e) -> {
      System.out.println("Button clicked");
});



منبع : checknevis.blog.ir


۰ نظر موافقین ۰ مخالفین ۰ ۰۴ تیر ۹۴ ، ۱۶:۰۷
مرتضی

با استفاده از کلاس Toolkit می توان این کار را انجام داد که هم می تونین از متد های getWidth و getHeigth به صورت زیر استفاده کنین :

int width = (int) Toolkit.getDefaultToolkit().getScreenSize().getWidth();
int height= (int) Toolkit.getDefaultToolkit().getScreenSize().getHeigth();

می تونین از یک Dimension هم استفاده کنین که یک ابعاد رو می گیره و متد های getWidth و getHeight برای برگردوندن مقدار ارتفاع و پهنا داره و برای تعیین اندازه یک فریم هم میشه ازش استفاده کرد

Dimension d = Toolkit.getDefaultToolkit().getScreenSize();



منبع : it3du.ir




۲ نظر موافقین ۰ مخالفین ۰ ۰۴ تیر ۹۴ ، ۱۵:۴۸
مرتضی
وراثت در جاوا یا Inheritance همیشه بین دو کلاس انجام می شود. یعنی ما کلاسی به نام پدر یا super class و کلاسی به نام فرزند یا sub class داریم.
کلاس sub class از کلاس super class ارث بری می کند.در جاوا برای اعلان ارث بری کلاسی از کلاس دیگر از واژه کلیدی extends  و به صورت زیر عمل می کنند:
public class SubClass extends SuperClass {
}
در جاوا ارث بری چندگانه  یا multiple inheritance وجود ندارد و هر کلاس فرزند تنها می تواند از یک کلاس پدر ارث بری انجام دهد (single inheritance ).
ارث بری را اگر بخواهیم با مثالی از دنیای واقعی تعریف کنیم به این صورت است که یک فرزند
۱ نظر موافقین ۰ مخالفین ۰ ۰۲ تیر ۹۴ ، ۱۵:۴۴
مرتضی

در این برنامه با استفاده از کتابخانه های موجود در جاوا اشکالی همچون مستطیل دایره خط و چند ضلعی را در یک فریم رسم می کنیم.


import java.awt.Color;
import java.awt.Graphics;
import java.awt.Polygon;
import javax.swing.JFrame;
/**
 *
 * @author cheknevis.blog.ir
 */
public class Shapes extends JFrame {
    
    public Shapes(){
        super("Shapes - cheknevis.blog.ir");
        setSize(600, 600);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
        
    }
    
    @Override
    public void paint(Graphics g){
        super.paint(g);
        g.setColor(Color.blue);
        g.drawLine(50, 200, 150, 400);
        g.setColor(Color.red);
        g.drawRect(50, 55, 150, 50);
        g.setColor(Color.green);
        g.drawOval(100, 120, 150, 150);
        Polygon poly = new Polygon();
        poly.addPoint(250, 55);
        poly.addPoint(250, 100);
        poly.addPoint(350, 100);
        g.drawPolygon(poly);
        poly.addPoint(500, 55);
        poly.addPoint(500, 100);
        poly.addPoint(350, 100);
        g.fillPolygon(poly);
    }
    
    public static void main(String[] args){
        Shapes s = new Shapes();
        s.setVisible(true);
    }
    
}

اگر سوالی در رابطه با این کد بود می تونین در قسمت نظرات اعلام کنین.

همچنین می تونین از منوی وبلاگ در بخش دانلود سورس کد های جاوا سورس این برنامه هارو دانلود کنین.

موفق باشید.

منبع : it3du.ir



۹ نظر موافقین ۰ مخالفین ۰ ۲۴ ارديبهشت ۹۴ ، ۱۷:۱۸
مرتضی

در واقع this یک اشاره گر به آبجکتی از کلاس جاری می باشد.

زمانی که بخواهیم متغییری در کلاس را اشاره کنیم می توانیم با this این کار را انجام دهیم.

همچنین با استفاده از this می توانیم کانستراکتور همان کلاس را فراخوانی کنیم.

برای اینکه واضح تر به ادامه توضیحات ادامه بدیم یک مثال میزنیم

public class Test {
public Test(){
this(10);
}
public Test(int i){
this(i,++i);
}
public Test(int i, int j){
System.out.println("i : "+i + " j : "+j);
}
public static void main(String[] args){
Test t = new Test(); // or new Test();
}
}

در اینجا با استفاده از this() می توانیم سازنده های موجود در کلاس را فراخوانی کنیم و اگر سازنده ایی دارای پارامتر باشد برای this آن پارامتر ها را مقدار دهی می کنیم تا به سازنده مورد نظر اشاره کند.

در ادامه مطلب مثالی از this برای اشاره به یک متغییر ارائه می دهیم...

۲ نظر موافقین ۰ مخالفین ۰ ۲۲ ارديبهشت ۹۴ ، ۲۲:۳۱
مرتضی
Constructor ها یا سازنده ها در جاوا ویژگی هستند که با استفاده از آنها می توان متغییر های یک کلاس را در هنگام ایجاد نمونه از آن را مقدار دهی کرد یا مقداری را به کلاس دیگر ارسال کرد که این پارامتر ارسالی می تواند آبجکت ایجاد شده از یک کلاس باشد.
هر کلاسی در جاوا می تواند n کانستراکتور داشته باشد.
اگر برای کلاسی کانستراکتور تعیین نشود در هنگام ایجاد نمونه از آن کلاس به صورت خودکار یک کانستراکتور پیش فرض برای آن ایجاد خواهد شد.
نمونه ایی از یک کلاس ساده با یک سازنده پیش فرض (Default Constructor) :

public class Test {
     public Test(){
         System.out.println("print from constructor");
     }
}
در این کلاس چون کانستراکتور Test() فاقد پارامتر است کانستراکتور پیش فرض می باشد.
یک کانستراکتور باید هم نام با نام کلاس باشد.در کلاس Test تمامی سازنده ها باید با نام Test ایجاد شوند.
یک سازنده می تواند سازنده ی دیگر همان کلاس را فراخوانی کند یا در بحث شی گرایی یک سازنده کلاس می تواند سازنده ی کلاسی که از آن مشتق شده یا ارث بری می کند را فراخوانی کند (با اشاره گر های this و super).
سازنده ها نوع بازگشتی ندارند یعنی مقداری را return نمی کنند.
نوع دسترسی کانستراکتور ها می تواند public ، private ، protected و یا default access باشد.
سازنده ها می توانند تعداد پارامتر های یکسان اما با نوع داده ایی متفاوت باشد.به مثال زیر توجه کنید :

public class Test2 {
     public Test2(int i){}
     public Test2(double d){}
     public Test2(String s){}
}
نکته قابل توجه این است که هر سه سازنده دارای یک پارامتر می باشند و هم نام اند ولی دارای پارامتر هایی با نوع داده ایی متفاوت می باشند که آنها را از هم متمایز می کند. این تمایز زمانی مشخص می شود که شما در حال ایجاد آبجکتی از کلاس باشید. برای نمونه :

public class ConstructorTest {
    Test2 t1;
    Test2 t2;
    Test2 t3;
    public static void main(String[] args){
        t1 = new Test2(1);
        t2 = new Test2(10.2);
        t3 = new Test3("String");
    }
}
در اینجا پارامتر هر نمونه ایی که از کلاس Test2 ایجاد کرده ایم در حین عمل new کردن، مشخص می کند که نمونه ی ایجاد شده (در این جا t1 t2 t3) با کدام یک از کانستراکتور کلاس Test2 نمونه سازی شود. به هر حال با اجرای برنامه عملی اتفاق نمی افتد زیرا دستوری در سازنده ها وجود ندارد.

نکته ی مهم در کلاس Test2 این است که این کلاس سازنده ی پیش فرض ندارد.زمانی که ما برای کلاس سازنده ایی تعریف نکنیم به صورت خودکار برای کلاس سازنده پیش فرض در نظر گرفته می شود تا از بروز خطاهایی که می توانند ناشی از فراموشی برنامه نویس برای ایجاد سازنده پیش فرض باشد جلوگیری شود.
اما زمانی که شما سازندهی پیش فرض تعریف نمی کنید اما کلاس دارای سازنده می باشد مانند مثال زیر :
public class Test3 {
public Test3(int i){}
public static void main(String[] args){
Test3 t1 = new Test3(); // compile error
Test3 t2 = new Test3(10);
}
}
دلیل اینکه نمونه t1 یک خطای زمان کامپایل می باشد این است که کلاس سازنده پیش فرض ندارد و چون دارای سازنده ایی با پارامتر می باشد به صورت خوذکار برای آن سازنده پیش فرض در نظر گرفته نمی شود.
پس این نکته مهم را باید توجه داشته باشیم.
خوب حالا مثالی از سازنده برای مقدار دهی متغییر های یک کلاس در زمان ایجاد نمونه از آن کلاس در ادامه مطالب ارائه می دهیم.
۲ نظر موافقین ۰ مخالفین ۰ ۲۱ ارديبهشت ۹۴ ، ۲۳:۵۸
مرتضی

متد ها (method) را می توان همانند یک ابزار برای یک تعمییر کار می توان در نظر گرفت.مثلا با یک آچار می توان تعدادی پیچ را باز کرد.

طریقه کار به اینصورت می باشد که هر زمان که نیاز به آچار برای باز کردن پیچی داشته باشیم باید آچار را بیاوریم.

فرض کنید آچار را به صورت یک متد تعریف کنیم ، آنوقت برای اینکه بتوانیم از آچار استفاده کنیم باید آن را فراخوانی کنیم.


خوب متد ها حتما باید درون کلاس ها تعریف شوند.

متد ها در جاوا حتما باید مقداری را برگردانند (return) کنند. اما می توانیم متدی داشته باشیم که مقدار هیچ یا پوچ (void) را برگردانند.

شکل کلی تعریف متد ها در جاوا :

[access-modifier] [static] DataType MethodName {
     // statement
}

access-modifier :

چهار نوع می باشد :

1- private

2- public

3- protected

4- default access

static :

بر حسب نیاز می توان از این نوع استفاده کرد (در بخش های بعدی توضیح داده می شود).

DataType :

یا نوع داده ایی. نوع داده ایی می باشد که متد بر می گرداند.

نوع داده ایی می تواند از نوع int ، long ، byte، short یا صحیح ، float ، double یا اعشاری ، char یا کاراکتری ، String یا رشته ، boolean یا بولی که دو مقدار true یا false‌را بر میگرداند.


Maximum Value Minimum Value Bits Type
127 -128 8 byte
32767 -32768 16 short
2,147,483,647 -2,147,483,648 32 int
9,223,372,036,854,775,807 -9,223,372,036,854,775,808 64 long
3.40282346638528860e+38
1.40129846432481707e-45 4 float

مثال :
int a = -100;
int b = 1000;
int c = -10000;
int d = 100000000000;
float e = 12.34f;
double f = -56.78;
boolean iLoveJava = true;
char aChar = 'a';
String greeting = "Hi, there!";

خوب، حالا نحوه ایجاد یک تابع و فراخوانی آن در برنامه.ولی قبل از آن توضیحی درباره دستور new در جاوا و دسترسی به متغییر ها و متد ها با استفاده از ایجاد کردن شی (object) ارائه می دهیم که برای درک موضوع لازم می باشد.
دستور new : ایجاد یک نمونه یا آبجکتی از نوع کلاس را در فضایی از حافظه ایجاد می کند و با استفاده از آن آبجکت می توان به عناصر موجود در کلاس دسترسی پیدا کرد. این عناصر می تواند متغییر ها ، متد ها باشد که با فراخوانی می توان از آنها استفاده کرد یا تغییراتی در مقدار آنها ایجاد کرد.
۱ نظر موافقین ۰ مخالفین ۰ ۱۹ فروردين ۹۴ ، ۱۷:۴۶
مرتضی