لینوکس، عشق، برنامه نویسی

لینوکس، عشق، برنامه نویسی

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

 

کامپایل و اجرای پروژه های جاوا بدون نیاز به IDE

 

 

 

 

فصل اول: مقدمه

فصل دوم:  مفهوم jdk

فصل سوم: مفهوم پکیج در جاوا

فصل چهارم: مفهوم current working directory در شل

فصل پنجم: مفهوم کامپایل و اجرا در جاوا

فصل ششم: نحوه ی کامپایل سورس کد های جاوا با کامپایلر جاوا ( یا همان javac)

فصل هقتم: نحوه ی اجرای پروژه ی کامپایل شده ی جاوا با مفسر جاوا (یا همان  java)

فصل هشتم: ایجاد و کامپایل و اجرای پروژهای جاوا با سناریو های مختلف: سناریوی اول

فصل نهم: ایجاد و کامپایل و اجرای پروژهای جاوا با سناریو های مختلف: سناریوی دوم

 

 

 

 

این پست در دست تکمیل است (هنوز کامل نشده)
 

۰ نظر ۲۹ بهمن ۰۰ ، ۲۳:۲۴
Linux-Geek

سلام

در این پست میخام درباره ی ایونت هندلینگ در جاوا با استفاده از Anonymous class توضیحاتی بدم.

 

به قطعه کد زیر نگاه کنید.

 
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;

public class Main {

        public static void main(String[] args) {
     
                JButton btn = new JButton();

                btn.addActionListener( new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {

                                System.out.println("Hello World!");
                            }
                    });
            }
    }
 

 

همه ی ما می دونیم که

۰ نظر ۰۹ مهر ۰۰ ، ۱۳:۳۸
Linux-Geek

 

 

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

 

بسیاری از برنامه نویسان تازه کار (و همچنین حرفه ای)، مخصوصا برنامه نویسانی که دات نت یا جاوا کار میکنن، برای برنامه نویسی از IDE استفاده میکنن. محیط برنامه نویسی Visual studio و Eclipse و Iintellij IDE و Netbeans چهارتا از بهترین ide های شناخته شده برای برنامه نویسی هستن که اکثر زبان ها رو پوشش میدن و

۰ نظر ۱۳ خرداد ۰۰ ، ۲۲:۲۹
Linux-Geek

 

 

سلام.

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

 

در همین ابتدا بگم، در این مقاله، از علایم نگارشی به درستی استفاده شده تا خواندن متن برای شما راحت باشه.

 

پس کمربندها رو محکم ببندید و ماسک اکسیژن خودتون را روی صورت بذارید چونکه میخایم به اعماق سیستم عامل لینوکس بریم و ببینیم در عمق سیستم عامل چه خبره و چجوری کار میکنه.

 

 

بهترین شیوه ای که می تونم به شما یاد بدم که یک نرم افزار چگونه در لینوکس نصب میشه این هست که

۴ نظر ۲۷ فروردين ۰۰ ، ۲۲:۳۰
Linux-Geek

 

 

دوستان سلام. تقریبا چند روز پیش میخواستم برنامه gambas3 رو روی مانجارو نصب کنم، برنامه رو نصب کردم ولی برنامه اجرا نشد و یک ارور داد به این شکل: 

gb.gui.qt: error: cannot load component 'gb.qt5'

 

از ظاهر اررور میشه فهمید که یک ایرادی در رابطه با پجیج های کیوت وجود داره ولی چند روز از این قضیه میگذره و هنوز نتونستم این مشکل رو برطرف بکنم. راستش رو بخواید دیروز احساس کردم بعد از حدود ۴ ۵ سال کار کردن با لینوکس،  هیچ چیز از پکیج ها نمیدونم و به همین خاطر تصمیم گرفتم یک مقاله ی خیلی جامع درباره پکیج ها و پکیج منیجر ها در لینوکس بنویسم تا هم خودم ۰ تا ۱۰۰ این قضیه رو یاد گرفته باشم و هم به شما یاد بدم. پس با من همراه باشید.

۲ نظر ۰۱ فروردين ۹۹ ، ۱۵:۲۱
Linux-Geek

 

قبلا در این پست کتابخانه (یا همون لایبرری) DNTPersianUtils.Core رو بهتون معرفی کردم.


امروز می خوام لایبرری JAVAPersianUtils.Core رو بهتون

۰ نظر ۱۴ اسفند ۹۸ ، ۱۸:۰۹
Linux-Geek

به نام خدا

 

 

 

 

 

سلام به همه ی دوستان عزیز.

این دومین پستی هست که برای معرفی پروژه های اوپن سورس ایرانی میزارم. هر چند خودم

۰ نظر ۱۳ اسفند ۹۸ ، ۱۷:۴۳
Linux-Geek

 تبدیل تاریخ در جاوا با کتابخانه icu4j شرکت IBM

 

دوستان سلام. من میخاستم تاریخ شمسی رو به میلادی و قمری در زبان جاوا تبدیل کنم. بعد از چندین روز جستجوی های فراوان و صرف وقت بسیار، در نهایت تونستم این کار رو بکنم. در این پست می خوام به شما هم آموزش بدم تا وقت شما مثل من تلف نشه

 

در این پست می خوام اموزش تبدیل انواع تاریخ (شمسی به میلادی، شمسی به قمری، میلادی به شمسی، میلادی به قمری، قمری به شمسی و قمری به میلادی) رو آموزش بدم.

 

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

 

اگه در گوگل سرچ کنید، کد های زیادی برای تبدیل تاریخ در جاوا پیدا میکنید، ولی اکثرا ایراد دارن و در یک محدوده ی زمانی مشخصی خروجی درست میدن و برای

۱۱ نظر ۲۱ بهمن ۹۸ ، ۱۶:۱۱
Linux-Geek

به نام خدا

 

 

 

 

بله، سیستم عامل افسانه ای ویندوز ۷ به پایان راه رسید.

 

از امروز، سه شنبه ۲۴ دی ماه ۱۳۹۸، مایکروسافت دیگر ویندوز ۷ را پشتیبانی نخواهد کرد و باید برای همیشه با این ویندوز خداحافظی کنید زیرا که دیگر وصله های امنیتی برای این نسخه از ویندوز منتشر نخواهد شد و بنابراین در معرض انواع تهدیدات امنیتی قرار خواهد گرفت. با جرات می توان گفت که بعد از ویندوز xp، هیچکدام از نسخه های ویندوز، نه ویندوز  ویستا، نه ویندوز ۸ و نه ویندوز ۱۰ به اندازه ی ویندوز ۷ مورد استقبال و محبوبیت طرفداران قرار نگرفتند و امروز قطعا روز سختی برای طرفداران خواهد بود چرا که مایکروسافت دیگر هیچ گاه ان را پشتیبانی نخواهد کرد. این خبر برای ما ایرانی ها

۱ نظر ۲۴ دی ۹۸ ، ۲۳:۱۵
Linux-Geek

به نام خدا

 

 

 

 

 

در این مقاله میخوام به معرفی برنامه tldr بپردازم که خیلی در لینوکس به کار شما خواهد امد و کار شما رو ساده تر خواهد کرد :) . نظرات خودتون رو توی کامنت بنویسید ;)

 

اگر شما هم مثل من از صفحه

۴ نظر ۲۷ مهر ۹۸ ، ۱۳:۰۵
Linux-Geek

به نام خدا

 

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

 

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

 

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

رفتم توی سایتش اونجا توضیح داده بود که برای نصب اون روی توزیع آرچ و توزیع های مبتنی بر آرچ، باید AUR استفاده کرد و از اونجا نصبش کرد.

۲ نظر ۰۱ مهر ۹۸ ، ۱۳:۱۴
Linux-Geek

به نام خدا

 

 

 

 

نرم افزار ویرچوال باکس که معرف حضورتون هست (این نرم افزار مال شرکت اوراکل هست و بصورت اوپن سورس با لایسنس GPL2منتشر میشه)

 

در این پست میخام بهتون یاد بدم کاری کنید که این نرم افزار

۶ نظر ۰۲ شهریور ۹۸ ، ۱۲:۵۳
Linux-Geek

به نام خدا

  

 

 

بله! عنوان رو درست خوندید!!! ، در این پست میخوام نحوه ی نصب یک توزیع لینوکس رو روی فلش بهتون یاد بدم!!! اگه سوالی داشتید حتما واسم کامنت بزارید :)

سیستم عامل لینوکس بسیار قابل حمل هست, به این معنی که شما میتونید این سیستم عامل رو روی هر نوع حافظه ای نصب کنید, این حافظه میتونه یک حافظه ی اینترنال (داخلی) باشه که داخل کیس کامپیوتر ها و لبتاب ها هست, میتونه یک حافظه اکسترنال (خارجی) باشه که توسط usb به سیستم وصل میشه, و حتی میتونه یک حافظه ی فلش باشه!!  :))))
 
این یکی از عجایب لینوکس هست که

۰ نظر ۱۰ خرداد ۹۸ ، ۲۲:۱۷
Linux-Geek

به نام خدا

 

 


در این مقاله میخوام به طور مختصر و کوتاه به معرفی فریم ورک GTK بپردازم

 
اگر شما هم مثل من به نرم افزار های گرافیکی علاقه داشته باشید و کنجکاو باشید که بدونید یک نرم افزار (مثل فتوشاپ یا فایرفاکس و ...) به چه زبانی نوشته شدن, باید با مفهوم فریم ورک های گرافیکی(مثل GTK و Qt و غیره ) اشناتون کنم.
 

 
تعریف فریم ورک:

فریم ورک به کدهایی گفته میشو که به یک زبان خاص (مثلا  c یا ++c یا جاوا و ...) و برای اهداف خاصی نوشته می شوند
 
برای ایجاد رابط کاربری یا همون GUI نرم افزارها ( یا به قول خودمون، ظاهر برنامه ها ), از فریم ورک های مختلفی استفاده میشه. یکی از معروف ترین اونها که اوپن

۱ نظر ۰۸ خرداد ۹۸ ، ۲۲:۱۷
Linux-Geek

به نام خدا

 

 

 

 

من تقریبا مدت زیادی هست که از مانجارو (با دسکتاپ xfce) استفاده میکنم. یکی از تجربه های بدی که در استفاده از مانجارو (با دسکتاپ xfce) داشتم این بود که سیستم موقع پخش ویدیو (چه در یوتوب و یا سایت های دیگه و چه در برنامه vlc)، و یا موقع حرکت دادن موس، هر چند لحظه یک بار به مدت حدودا 1 ثانیه هنگ میکرد و دوباره درست میشد. این مساله ی زیاد مهمی نبود ولی دیگه رو مغز ادم راه میرفت و تقریبا اعصاب خورد کن شده بود.  

قبلا چند باری توی اینترنت و

۰ نظر ۱۰ فروردين ۹۸ ، ۱۴:۴۳
Linux-Geek

به نام خدا

 

 

 

 

 

سلام به همه ی دوستان عزیز. من از امروز تصمیم گرفتم که برای حمایت از پروژه های اوپن سورس ایرانی، پست هایی در معرفی اونها بزارم. 

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

 

این پروژه، یک دانلود منیجر قابل رقابت با IDM برای سیستم عامل لینوکس هست که

۱ نظر ۲۳ ارديبهشت ۹۷ ، ۱۱:۵۹
Linux-Geek

 

 

 

در پست های قبلی درباره snap package یا همون بسته های اسنپ  یه پست گذاشته بودم فکر میکنم دیگه همتون میدونید اسنپ پکیج چیه :) اگه نمیدونید این پست رو بخونید

 

امروز در این پست میخوام  snap store رو براتون معرفی بکنم و بیشتر

۱ نظر ۱۰ فروردين ۹۷ ، ۲۱:۴۸
Linux-Geek

به نام خدا

 

 

 

 

قبل از نوشتن این مطلب داشتم فکر میکردم که چجوری به ساده ترین شکل ممکن و بدون پیچیدگی، اون چیزی که در ذهنم هست رو توضیح بدم :)  چون احساس میکنم که یه مقدار وسواس دارم در توضیح مطالب، چون همیشه دوس دارم همه چیز رو خیلی کامل و جامع توضیح بدم، تا حتی کاربران تازه وارد لینوکس هم مطالبم رو بگیرن، پس اگر مطالب رو تکراری گفتم یا زیاده گویی کردم ببخشید :) ،  بگذریم :)

 

در این مقاله (و مقاله های بعدی)، می خوام هر چی رو که درباره پکیج های اسنپ (snap) در اوبونتو یاد گرفتم رو خیلی ساده برای شما هم توضیح بدم، چون درباره پکیج های اسنپ یه مقدار سردرگمی و ابهام برای کاربران ایرانی وجود داره و همچنین در منابع فارسی چیز زیادی در این باره وجود نداره و منابع انگلیسی هم زیاد سر راست و شفاف نوشته نشدن. برای همین من سعی کردم این مطلب رو بنویسم تا بلکه یه مقدار این مطلب رو تونسته باشم انتقال بدم. 

 

۲۴ نظر ۰۷ فروردين ۹۷ ، ۲۲:۲۸
Linux-Geek

به نام خدا

 

 

 

 

 

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

 

همه شما در ویندوز احتمالا یک بار در عمرتان با تصویر بالا روبرو شده اید. انچه که در تصویر میبینید یک فایل chm هست که مایکروسافت از این فایل برای تهیه ی راهنما یا help برنامه ها استفاده می کند. 

 

 

و اما این فایل در واقع ساختارش چیه و چرا تصمیم گرفتم دربارش مطلب بنویسم؟

فایل های chm یا همون Microsoft Compiled HTML Help در واقع مجموعه ای از فایل های html هستن که  همگی داخل یک فایل با فرمت chm قرار گرفتن. شما مطالبتون رو در داخل فایل های html مینویسید ( حالا هر تعداد فایل html که دوس داشتید) و سپس به وسیله ی یک نرم افزار که بهتون معرفی میکنم، همه ی اون فایل های html رو تبدیل به یک فایل chm میکنید و خیلی راحت میتونید

۱ نظر ۱۳ شهریور ۹۶ ، ۱۸:۴۵
Linux-Geek

به نام خدا

 

 

در این پست می خوام به معرفی کتابخانه بسیار خوب و قدرتمند jsoup بپردازم و با مثال هایی نحوه استفاده از اون رو نشون بدم، پس با من همراه باشید 

 

jsoup چیست؟ 

کتابخانه jsoup در جاوا، کتابخانه ی قدرتمندیست و دارای متد ها و کلاس های زیادی هست که برای آنالیز و تجزیه و تحلیل و استخراج اطلاعات مورد نیاز از سورس صفحات HTML به کار می رود. برای مثال، فرض کنید که شما سورس یک صفحه Html رو دارید به شکل زیر:

 

 

<!DOCTYPE html>
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <title>10.10.34.34</title>
   </head>

   <body>
       <div class="items">      
         <ul>
            <li><a href="http://www.google.com">برو به گوگل</a></li>
            <li><a href="http://www.facebook.com">برو به فیسبوک</a></li>
            <li><a href="http://www.gmail.com">برو به جیمل</a></li>
            <li><a href="http://www.twitter.com">برو به توییتر</a></li>
         </ul>
      </div>

      <div class="portfolio-item pi8">
         <h3 style="background-position: center -610px;"></h3>
         <ul style="color:#804e29;">
            <li><a href="http://peyvandha.ir/8-2.htm">بورس و سرمایه گذاری</a></li>
            <li><a href="http://peyvandha.ir/8-3.htm">فروشگاه اینترنتی</a></li>
            <li><a href="http://peyvandha.ir/8-3.htm">کامپیوتر و تلفن همراه</a></li>
            <li><a href="http://peyvandha.ir/8-4.htm">تجارت و خدمات </a></li>
            <li><a href="http://peyvandha.ir/8-4.htm">تبلیغات و نیازمندی ها </a></li>
            <li><a href="http://peyvandha.ir/8-5.htm">اشتغال و کارآفرینی </a></li>
            <li><a href="http://peyvandha.ir/8-6.htm">تولیدی و صنعتی </a></li>
            <li><a href="http://peyvandha.ir/8-6.htm">صنایع خودرو</a></li>
            <li><a href="http://peyvandha.ir/8-7.htm">حمل و نقل </a></li>
         </ul>
      </div>
   </body>

</html>

 

و می خوهید که: 

تمام لینک ها را از این سورس html استخراج کنید

و یا می خواهید تمام اطلاعاتی که

۰ نظر ۰۱ اسفند ۹۵ ، ۲۳:۳۸
Linux-Geek