![]() |
![]() |
|
| آموزش کامپیوتر و برنامه سازی |
|
گوشی مجانی |
|
+ نوشته شده در
جمعه دوم آذر 1386ساعت 0:53 توسط نیما |
|
|
مطالبی آموزشی در مورد ویژوال دات نت
نظر یادتون نره با تشکر آشیانه کامپیوتر ایران |
|
+ نوشته شده در
پنجشنبه یکم آذر 1386ساعت 2:45 توسط نیما |
|
|
مطالب عمومی در مورد برنامهنويسی در لينوكس http://www.tldp.org/LDP/lpg/index.html راهنمای برنامهنويسی در لينوكس. http://www.newriders.com/books/opl/ebooks/0735710430.html يك كتاب جامع و مفيد برای برنامهنويسان حرفهای لينوكس. http://www.luv.asn.au/overheads/prog مقدماتی در مورد برنامهنويسی در محيطهای لينوكس و يونيكس. http://members.tripod.com/rpragana يادداشتهای يك برنامهنويس لينوكس با عنوان رويدادهای برنامهنويسی لينوكس. http://tldp.org مجموعهای از لينكها به منابع برنامهنويسی در لينوكس.
برنامهنويسی به زبان اسمبلی http://linuxassembly.org مجموعهای از منابع و راهنماها برای نوشتن برنامههای اسمبلی در محيط سيستمعاملهای خانواده يونيكس. http://x86.ddj.com/secrets/intelsecrets.htm دانستنیهايی در مورد پردازندههای اينتل و برنامهنويسی اسمبلی روی آنها. http://tldp.org/HOWTO/Assembly-HOWTO/index.html راهنمای برنامهنويسی اسمبلی در محيط لينوكس. http://burks.bton.ac.uk/burks/language/asm/asmtut/asm1.htm راهنمايی برای اسمبلی ماشينهای 80x86 http://www.xs4all.nl/~smit/asm01001.htm راهنمای برنامهنويسی اسمبلی 8086
http://www.kerneli.org يك API برای رمزنگاری اطلاعات در لينوكس. http://www.openssl.org برنامه سورس-آزاد OpenSSL برای انتقال امن اطلاعات.
پايگاههای داده http://www.sleepycat.com پايگاهداده سورسآزاد دانشگاه بركلی. http://www.mysql.com پايگاهداده معروف و پرطرفدار mysql . http://www.postgresql.org پايگاهداده PostgreSQL .
برنامهنويسی توزيعشده (Distributed) http://linas.org/linux/corba.html منابعی در مورد پيادهسازی استاندارد CORBA در لينوكس. http://www.mico.org پيادهسازی MICO از استاندارد CORBA . http://www.dotgnu.org ديدن اين سايت را به علاقهمندان تكنولوژی .NET توصيف میكنيم. http://www.go-mono.org اين سايت نيز تلاش دارد يك زيرساخت برای توليد برنامههای .NET ايجاد كند.
ويرايشگرهای با پشتيبانی زبانهای برنامهنويسی http://www.gnu.org/software/emacs ويرايشگر معروف Emacs. در مورد اين ويرايشگر در شمارههای آينده مطلبی خواهيم داشت. http://nedit.org يك ويرايشگر گرافيكی برای ويرايش فايلها در محيط لينوكس. http://www.vim.org ويرايشگر بینظير VIM. اين ويرايشگر را نيز در آينده بيشتر معرفی خواهيم كرد.
برنامهنويسی بازیها http://lgdc.sunsite.dk سايتی برای برنامهنويسان بازیها در لينوكس. http://game.ncl.ac.uk صفحهای متعلق به بازینويسان در محيط X11 .
برنامهنويسی در محيط GNOME http://developer.gnome.org سايت اصلی برنامهنويسان در محيط Gnome
برنامهنويسی KDE در لينوكس http://developer.kde.org سايت برنامهنويسان KDE http://www.ph.unimelb.edu.au/~ssk/kde/devel سايتی ديگر برای برقراری ارتباط ميان برنامهنويسان KDE
برنامهنويسی گرافيكی در لينوكس http://www.faqs.org/faqs/graphics/fileformats-faq منبعی در مورد فرمت فايلهای گرافيكی. http://www.mesa3d.org سايت پروژه Mesa كه در شمارههای گذشته معرفی شد. http://www.inria.fr/koala/lehors/xpm.html اطلاعاتی در مورد فرمت XPM و كتابخانهای برای كار با اين فرمت.
برنامهنويسی روی سختافزارها http://en.tldp.org/HOWTO/mini/IO-Port-Programming.html معرفی روشهای برنامهنويسی پورتهای I/O در لينوكس. http://en.tldp.org/HOWTO/SCSI-Programming-HOWTO.html روشهای برنامهنويسی SCSI (اسكازي) در محيط لينوكس. http://en.tldp.org/HOWTO/Serial-Programming-HOWTO/index.html روشهای برنامهنويسی روی پورت سريال در لينوكس.
برنامهنويسی IPC: InterProcess Communication http://www.ecst.csuchico.edu/~beej/guide/ipc منبعی خوب برای برنامهنويسی IPC
IDEهای لينوكس http://anjuta.sourceforge.net پروژه Anjuta كه در شمارههای بعدی بيشتر معرفی خواهد شد. http://www.kdevelop.org محيط برنامهنويسی ويژوال كه در آينده به تفصيل معرفی خواهد شد. http://starship.python.net/crew/zack/ptui واسط كاربری برای برنامهنويسی Python/Tkinter http://www.rhide.com يك IDE برای نوشتن برنامه به زبانهای C، C++ و پاسكال. http://www.neuron.com/stewart/vtcl يك IDE ويژوال برای برنامهنويسی TCL .
برنامهنويسی جاوا http://leb.net/freebuilder يك پروژه برای ايجاد يك IDE برای برنامهنويسی جاوا در محيط لينوكس. http://www.japhar.org اين پروژه در پی ايجاد يك مفسر مستقل از محيط (Portable Interpreter) برای بايتكدهای جاوا است. . http://developer.java.sun.com/developer سايتی برای برقراری ارتباط ميان برنامهنويسان جاوا. http://www.blackdown.org منبعی برای برنامهنويسی جاوا در محيط لينوكس. http://www.kaffe.org يك پيادهسازی سورسآزاد از ماشين مجازی جاوا.
زبانهای برنامهنويسی http://www.vaxxine.com/pegasoft/homes/book.html يك كتاب آنلاين كامل درباره زبان برنامهنويسی Ada http://gcc.gnu.org سايت اصلی كامپايلر GCC (در شمارههای بعد معرفی خواهد شد). http://gnu-pascal.de سايت زبان پاسكال در محيط لينوكس http://www-aig.jpl.nasa.gov/public/home/decoste/HTMLS/GNU/smalltalk/mst_toc.html راهنمای برنامهنويسی SmallTalk در محيط لينوكس
كتابخانههای برنامهنويسی http://www.gnu.org/manual/glibc-2.2.3/libc.html راهنمای استفاده از GNU libc http://www.imaxx.net/~thrytis/glibc/glibc-FAQ.html در مورد كتابخانه GNU libc http://en.tldp.org/HOWTO/NCURSES-Programming-HOWTO/index.html راهنمای برنامهنويسی با استفاده از كتابخانه Ncurses كه در شمارههای بعدی بيشتر معرفی خواهد شد. http://www.s-lang.org يك كتابخانه برای كمك به برنامهنويسان در نوشتن برنامههای قابل انتقال http://pauillac.inria.fr/~xleroy/linuxthreads كتابخانهای برای برنامهنويسی Thread در لينوكس
برنامهنويسی مولتیمديا در لينوكس http://leapster.org/linux/cdrom برنامهنويسی روی CD Drive در لينوكس. http://www.libsdl.org كتابخانه SDL كه در شمارههای قبل معرفی شد.
برنامهنويسی شبكه http://www.lowtek.com/sockets سايتی مناسب برای يادگيری برنامهنويسی شبكه در سيستمعاملهای مختلف. http://www.ecst.csuchico.edu/~beej/guide/net راهنمای برنامهنويسی شبكه. http://www.landfield.com/faqs/unix-faq/socket FAQ در مورد سوكتهای يونيكسی كه روشی پركاربرد برای برنامهنويسی شبكه در لينوكس است.
برنامهنويسی سيستمعامل http://en.tldp.org/LDP/lki/index.html دانستنیهايی در مورد پيادهسازی نگارش 2.4 از هسته لينوكس. http://www.ora.com/catalog/linuxdrive : Device Driverهای نوشته شده برای محيط لينوكس. http://www.linuxhq.com/guides/TLK/tlk.html كتابی خواندنی و ساده در مورد هسته لينوكس. http://www.linuxhq.com/guides/LPG/lpg.html راهنمايی برای برنامهنويسی در محيط لينوكس. http://en.tldp.org/LDP/lkmpg/mpg.html راهنمايی برای نوشتن ماجولهای هسته در لينوكس. در مورد ماجولها و نحوه نوشتن آنها در شمارههای آينده بيشتر خواهيم گفت. http://leapster.org/linux/kernel پروژه مستندسازی هسته لينوكس كه میتواند به برنامهنويسان هسته لينوكس در فهم كد آن كمك كند.
سايتهای مخصوص برنامهنويسان لينوكس http://programmers.luv.asn.au سايت برنامهنويسان LUV http://www.pm.org سايت برنامهنويسان Perl
قالبهای برنامهنويسی (Coding Style) http://www.coker.com.au/~russell/ccode توصيههای در مورد قالب نوشتن برنامههای C . http://www.purists.org/linux معرفی قالب به كار رفته برای نوشتن كد هسته لينوكس . http://www.ee.ryerson.ca:8080/~elf/hack/The10.html ده توصيف برای برنامهنويسان زبان C .
ايجاد برنامههای امن (Security Programming) http://www.whitefang.com/sup/secure-faq.html : FAQ در مورد نوشتن برنامههای امن در سيستمعاملهای مبتنی بر يونيكس.
توسعه نرمافزار http://ant.apache.org برنامهای برای كامپايل كردن برنامهها و ايجاد كد اجرايي. http://sources.redhat.com/autobook منبعی در مورد برنامههای autoconf، automake و libtool كه در شمارههای بعدی بيشتر معرفی خواهند شد. http://nis-www.lanl.gov/~rosalia/mydocs/autoconf_tutorial_toc.html منبعی ديگر در مورد برنامه autoconf http://www.eng.auburn.edu/grasp يك محيط توليد و نگهداری نرمافزار. http://www.gnu.org/software/make/make.html منبعی در مورد برنامه make كه در شمارههای بعدی بيشتر معرفی خواهد شد.
ارائه نرمافزار به ديگران http://www.rpm.org سايت اختصاصی برنامه RPM برای ايجاد بستههای نرمافزاري. http://www.openpkg.org يك ابزار برای تبديل برنامهها به بسته نرمافزاری كه مبتنی بر RPM نگارش 4 ايجاد شده است و سعی در ارائه قابليتهای بيشتری نسبت به آن دارد.
نبشتهنويسی http://en.tldp.org/LDP/abs/html/index.html راهنمای برنامهنويسی Bash . http://www.sektorn.mooo.com/era/unix/shell.html معرفی shellهای سيستمعاملهای مبتنی بر يونيكس . http://steve-parker.org/sh/sh1.shtml خودآموز برنامهنويسی shell
برنامهنويسی صوتی http://www.alsa-project.org/api.php3 : ALSA API برای برنامهنويسی صوتي. http://www.4front-tech.com/pguide راهنمای برنامهنويسان پروژه Open Sound System
برنامهنويسی واسط كاربر http://www.cs.cmu.edu/afs/cs.cmu.edu/project/amulet/www يك كتابخانه برای توليد واسط كاربر در محيطهای مبتنی بر يونيكس، ويندوز و مكينتاش. http://www.fox-toolkit.org/fox.html يك كتابخانه برنامهنويسی مبتنی بر C++ برای توليد واسط كاربر گرافيكي. http://www.gtk.org كتابخانه توليد واسط كاربر گرافيكی در محيط Gnome http://www.troll.no كتابخانهای برای توليد واسط كاربر برای محيط KDE http://world.std.com/~xforms كتابخانهای مبتنی بر Xlib برای توليد واسط كاربر گرافيكي
برنامهنويسی XML http://www.jclark.com/xml/expat.html يك كتابخانه برنامهنويسی برای ايجاد پارسر XML http://xmlsoft.org كتابخانه زبان C برای محيط Gnome به نام libxml .
برنامهنويسی X Window http://www.rahul.net/kenton/xsites.html سايتهای فنی در مورد سيستم X Window . http://www.users.cts.com/crash/s/slogan اطلاعات مفيد در مورد محيط X Window . |
|
+ نوشته شده در
چهارشنبه سی ام آبان 1386ساعت 1:13 توسط نیما |
|
مطلبي كوتاه در باره #S !
|
|
+ نوشته شده در
سه شنبه بیست و نهم آبان 1386ساعت 1:28 توسط نیما |
|
|
مقايسه خواص عمومي يك كلاس در C++ و C#
قبل از بررسي تفاوت بين كلاسها بين C++ و C# ابتدا خاصيت هاي عمومي يك كلاس را بررسي كرده سپس به بررسي تفاوت بين اين دو زبان قدرتمند خواهيم پرداخت. تعريف. كلاس در حالت ساده مجموعه اي از خواص(attributes) و روش ها (methodes) است كه در رابطه با هم هدف مشتركي را دنبال مي كنند و خدماتي را ارائه مي كنند. البته اين تعريف در حد يك تعريف علمي مي باشد ولي ذكر اين نكته ضروري است كه اكثر تعاريف در شي گرايي در طبيعت وجود دارد و در ساده ترين حالت براي تعريف يك كلاس مي توان از تعريف انسان استفاده كرد كه اين بحث در اين مقاله نمي گنجد. در هر حال ما به تعريف فوق اكتفا كرده و بحث را ادامه مي دهيم. خواص ها و روش ها كه در تعريف كلاس ارائه شد مي تواند نحوه دسترسي متفاوتي مانند public و private و protected داشته باشد كه براي برنامه نويسان C++ نيازي به توضيح نيست.
تفاوت در تعريف يك كلاس: چنانچه در مقاله لايه ها در C# نيز اشاره شد يك كلاس در يك برنامه C# در داخل يك لايه تعريف خواهد شد(اجباري نيست). تعريف يك كلاس در C# تفاوتهايي با C++ دارد كه سعي خواهيم كرد اين تفاوت ها را با چند مثال توضيح دهيم. فرض كنيد كلاس زير در C++ تعريف شده است كه اين كلاس را به يك كلاس C# تبديل خواهيم كرد. // Test.h class CTest{ private: int m_at1; int f1(); public: float m_at2; int f2(); CTest(); ~CTest(); };
// Test.cpp #include "test.h" CTest::CTest(){ m_at1 = 0; m_at2 = 0.0; } CTest::~CTest(){ // cout << "destructor call"; } int CTest::f1(){ return m_at1; } int CTest::f2(){ return m_at1+(int)m_at2; }
تفاوت اول: بر خلاف C++ در C# تعريف و نحوه عملكرد يك تابع يا Method در خود تعريف كلاس قرار داده مي شود. در C++ غالبا تعريف كلاس در فايل .h و بدنه توابع در فايل .cpp قرار مي گرفت. البته ذكر اين نكته ضروري است كه مي توان همين عمل را در .h نيز قرار داد ولي در يك برنامه بزرگ اين عمل كنترل برنامه را از دست برنامه نويس خارج كرده و همچنين مشكلات ديگري را براي برنامه نويسان ايجاد مي كند كه برنامه نويسان C++ با اين مشكلات آشنا هستند. تفاوت دوم: بر خلاف C++ در C# يك دسته از متغييرها را نمي توان بصورت public يا private و ... تعريف كرد و براي هر متغيير بايد نحوه دسترسي به آن نيز مشخص شود.
تفاوت سوم: بر خلاف C++ در C# تابع destructor وجود ندارد و خود C# مسئول از بين بردن يك شي مي باشد كه اين از بين بردن با توجه به محدوده تعريف اين شي انجام مي شود. البته تعريف destructor وجود دارد ولي نمي توان destructor را فراخواني كرد . در C++ فراخواني Destructor با استفاده از عملگر delete قابل انجام بود ولي چون C# مديريت object ها را خود بعهده مي گيرد شي ايجاد شده نميتواند توسط برنامه خراب شود. اين مطلب در مقالات بعدي مورد بررسي قرار خواهد گرفت. با توجه به تفاوتهاي ذكر شده مي توان اين كلاس را به صورت زير براي يك كلاس C# ارائه كرد.
// Test.cs using System; namespace NS { publicclass CTest { privateint m_at1; public float m_at2; privateint f1() { return m_at1; } public int f2() { return m_at1+(int)m_at2; } public CTest() { m_at1 = 0; m_at2 = 0.0f; } ~Test() { // Console.WriteLine("destructor call"); } } }
ايجاد يك كلاس در ++ و # در موقع استفاده از يك كلاس اگر از default constructor براي ايجاد يك كلاس استفاده مي شود در C# بايد constructor بصورت void فراخواني شود ( مانند توابع void معمولي) به مثال زير دقت كنيد. // C++ code CTest *a; a = new CTest;
// C# Code CTest a; a = new CTest();
ذكر اين نكته ضروري است كه در C# وقتي كلاسي تعريف مي شود در واقع اشاره گر به آن كلاس معرفي مي شود بنابراين با تعريف CTest a كلاسي از CTest ايجاد نمي شود و فقط يك اشاره گر از CTest تعريف مي شود و براي ايجاد يك كلاس استفاده از عملگر new اجباري است. ولي در C++ تعريف CTest a به منزله ايجاد يك كلاس و فراخواني Default Constructor مي باشد. |
|
+ نوشته شده در
سه شنبه بیست و نهم آبان 1386ساعت 1:22 توسط نیما |
|
|
+ نوشته شده در
سه شنبه یکم آبان 1386ساعت 2:40 توسط نیما |
|
|
نصب سرویس دهنده های ASP بر روی کامپیوتر Active Server Page چيست؟
اجراي صفحات Asp :
همان طور که احتمالا شما هم حدس زده اید 3 خط اول و خط آخر همان جملات Html ساده می باشند در حالی که کاراکتر های %> برای شروع قلمرو اسکریپت نویسی و <% برای خاتمه ASP Script می باشد و جمله ("response.write("Hello Prdev.Com
به كارگيري نرم افزار Visual InterDev :
|
|
|
+ نوشته شده در
سه شنبه یکم آبان 1386ساعت 2:39 توسط نیما |
|
|
صفحه نخست پست الکترونیک آرشیو |
| درباره وبلاگ |
|
|
| نوشته های پیشین |
|
آذر 1386 آبان 1386 |
| پیوندها |
|
برنامه نویسی ویژوال بیسیک 6 |
|
RSS
|