دسته بندی | کامپیوتر و IT |
بازدید ها | 5 |
فرمت فایل | doc |
حجم فایل | 32 کیلو بایت |
تعداد صفحات فایل | 35 |
آشنایی با پول الکترونیک
مقدمه :
پول در زندگی بشر از چنان اهمیتی برخوردار است که برخی آن را یکی از اختراعات بشریاد کرده اند و حتی معتقدند تمدن بشری با اختراع پول همزمان بوده است.
اقتصاد دانان تاریخ اقتصادی را با توجه به اهمیت نقش پول به سه دوره تقسیم می نمایند:
دوره اقتصاد پایاپای , دوره اقتصاد پولی و دوره اقتصاد اعتباری (کهزادی و گچلو, 1380 ). بر این اساس و با توجه به پیشرفت روز افزون فن آوری اطلاعات و ارتباطات (ICT ) و گسترش استفاده از پول الکترونیکی از اواسط دهه 1990 شاید بتوان دوره کنونی را دوره اقتصاد اینترنتی نامید . پول الکترونیک , ارزش پولی واحدهای ذخیره شده بر روی ابزار الکترونیکی است که توسط دولت یا مؤسسات خصوصی منتشر می شود.
گسترش فرایند استفاده از پول الکترونیک پیامدهای تجاری, اقتصادی, سیاسی و اجتماعی چشمگیری به همراه دارد که در ادامه به برخی پیامدهای اقتصادی مرتبط با تجارت الکترونیک پرداخته خواهد شد.
ویژگیهای پول ا لکترونیک
اگر چه در فرایند توسعه پول الکترونیکی, انواع بسیار متفاوتی از فرآورده های پول الکترونیکی با ویژگیهای مختلف عرضه شده اند, اما در طراحی همه آ؛نها سعی شده است تا حداقل, همه ویژگیهای پول بانک مرکزی لحاظ گردد. به طور کلی فرآورده های پول الکترونیکی را از نظر فنی می توان به دو دسته تقسیم کرد: پول الکترونیکی مبتنی بر کارت های هوشمند و پول الکترونیکی مبتنی بر نرم افزارهای رایانه ای (پول مبتنی بر شبکه). فرآورده های پول الکترونیکی مبتنی بر کارت های هوشمند قابلیت شارژمجدد دارند و در همه جا به عنوان ابزار پرداخت, قابل استفاده می باشند. علاوه بر این, پرداخت از طریق آنها, نیازی به کسب اجازه از یک مرجع ندارد. دو ویژگی نخست, این نوع پول ها را از کارت های تک منظوره عادی که به طور موردی یا برای خرید یک سری کالا و خدمات خاص صادر شده اند متمایز می کند و ویژگی سوم, آنها را از کارت های بدهی متمایز می نماید. به طور کلی می توان گفت که فرآورده های این نوع پول, برای تسهیل پرداخت های با ارزش کم در معاملات خرد رو در رو طراحی شده اند.
بنابراین انتظار می رود که فرآورده های پول الکترونیکی مبتنی بر کارت های هوشمند, استفاده از پول بانک مرکزی و نیز در حد کمتر, استفاده از کارت های بدهی را برای پرداخت های مستقیم کاهش دهد.همچنین به احتمال زیاد استفاده از چک, کارت های پرداخت و کارت های بدهی در پرداخت های غیر مستقیم یعنی پرداخت های بهنگام را نیز کاهش خواهد داد(Berentsen , 1998 ) . فرآورده های پول الکترونیکی مبتنی بر نرم افزار رایانه ای نیز توانایی پرداخت و دریافت از طریق شبکه های کامپیوتری , به ویژه اینترنت را دارند. این نوع از طریق کاهش هزینه های مبادلاتی ( به واسطه تسهیل نقل و انتقال پول میان انواع مختلف حساب ها, بانک ها و کشورها) و نیز سرریز های یادگیری, تقاضای سپرده های دیداری را تحت تاثیر قرار داده و آنرا کاهش خواهد داد.
سرریز های یادگیری به مهارتی مربوط می شود که افراد در طی زمان, ضمن استفاده از نرم افزار های مالی شخصی و فن آوری های ارتباطی برای مدیریت بهینه برنامه های مالی خود, کسب می نمایند ( دژ پسند, 1383 ). ماهیت بانکی پول الکترونیک, همچون چک پول مسافرتی بیانگر طلب قابل دریافت از بانک یا مؤسسه اعتباری صادر کننده آن است که پیش از پرداخت به وسیله آن, به هیچ حساب خاصی منظور نشده است.اما مهمترین انگیزه چنین بانک یا مؤسساتی برای ایجاد و صدور پول الکترونیک, استفاده از حجم پول نقد خارج از سیستم بانکی به عنوان منبع مالی بسیار ارزان قیمت, تحت فرایند تبدیل آن به پول الکترونیک و ایجاد بدهی برای خود است. محصولات پول الکترونیک که به عنوان جایگزینی پول نقد سنتی ایجاد شده اند, با ماهیتی بسیار سیال و جا به جا پذیر می توانند به راحتی نسبت اجزای پولی ( اسکناس و مسکوک و سپرده های دیداری) و همچنین سرعت گردش پول را تغییر داده و از مجرای تغییر حجم پول, سیاست پولی بانک مرکزی را تحت الشعاع قرار دهند. مهمترین ویژگی پول الکترونیکی یعنی فرا ملیتی یا بی مرز بودن آن, نقش مهمی در اثر گذاری بر سایر متغیرهای اقتصادی ایفا می کند. اگر چه این ویژگی از نظر دولت ها منشا برخی تبعات منفی نشر گسترده پول الکترونیکی تلقی می شود اما به ارتقای سطح کارآیی مبادلات بین المللی نیز کمک قابل ملاحظه ای می نماید. طبیعتا با استفاده از پول الکترونیکی, هزینه ی نقل و انتقال بین المللی وجوه, به طور قابل توجهی کاهش خواهد یافت. البته با افزایش بی سابقه کار آیی پرداخت های بین المللی ممکن است بی ثباتی نظام پوئلی جهانی افزایش یافته و به بروز کشمکش بین ناشران و استفاده کنندگان پول الکترونیکی از یک سو و بانکهای مرکزی کشورها از سوی دیگر منجر گردد ( 1996 , Tanaka ).
دسته بندی | کامپیوتر و IT |
بازدید ها | 9 |
فرمت فایل | doc |
حجم فایل | 30 کیلو بایت |
تعداد صفحات فایل | 23 |
اشکال زدائی کارت شبکه
کارت شبکه ، یکی از مهمترین عناصر سخت افزاری در زمان پیاده سازی یک شبکه کامپیوتری است که امکان ارتباط یک کامپیوتر با محیط انتقال را فراهم می نماید . پس از نصب فیزیکی کارت شبکه ، ممکن است به دلایل متعددی امکان استفاده عملیاتی از آن وجود نداشته باشد :
وجود اشکال در سخت افزار کارت شبکه و یا کامپیوتری که کارت شبکه بر روی آن نصب شده است .
وجود اشکال در کابلی که کارت شبکه را به هاب و یا سوئیچ متصل می نماید .
هاب و یا سوئیچ دارای مشکلات مربوط به خود باشند .
اشکال زدائی یک کارت شبکه ممکن است صرفا" در حد و اندازه اعمال تغییراتی در خصوص پیکربندی آن باشد . در برخی موارد ، به منظور عیب یابی و رفع اشکال موجود ، می بایست تمامی موارد اشاره شده را بررسی نمود. در صورتی که از سیستم عامل ویندوز استفاده می گردد ، می توان لاگ سیستم را از طریق Event Viewer مشاهده نمود . در فایل فوق تمامی خطاهای زمان راه اندازی سیستم ثبت می شود . پس از بررسی لاگ سیستم ، ممکن است مشکل موجود مربوط به پیکربندی یک نرم افزار خاص باشد .
در زمان نصب کارت شبکه بر روی یک ایستگاه ، می بایست در ابتدا به مستندات ارائه شده همراه کارت شبکه مراجعه نمود تا مشخص گردد که چه مقادیری را می بایست برای IRQ و آدرس پورت I/O در نظر گرفت . در چنین مواردی لازم است که مستندات سایر دستگاه های نصب شده بر روی سیستم نیز مطالعه گردد. چراکه ممکن است اشکال موجود مربوط به conflict بین برخی تنظیمات انجام شده درخصوص سایر دستگاه های موجود بر روی سیستم باشد . ( برای رفع اشکال ، می بایست تنظیمات و پیکربندی سایر دستگاه ها را تغییر داد ) .
در صورتی که تمامی کارت های نصب شده بر روی یک سیسنم از نوع plug&play باشند ، می توان این اطمینان را داشت که یک IRQ و یا آدرس حافظه باعث بروز conflict در سیستم نشده است . در چنین مواردی به منظور عیب یابی و رفع اشکال موجود ، می بایست امکاناتی دیگر نظیر کابل ، هاب و سوئیچ را بررسی نمود .
بررسی LEDs : چراغ های مربوط به فعالیت و لینک
تمامی کارت های شبکه دارای یک و یا چندین LED به منظور نمایش وضعیت عملکرد کارت شبکه در هر لحظه می باشند . برای آگاهی از عملکرد هر یک از LED های موجود، می بایست به مستندات کارت شبکه مراجعه نمود . مثلا" برخی کارت های شبکه دارای یک LED به منظور نمایش وضعیت لینک ارتباطی می باشند . در اغلب موارد در صورتی که LED فوق روشن باشد ، اشکالی در لینک ارتباطی وجود نداشته و در مواردی که LED در وضعیت flashing باشد ، نشاندهنده وجود اشکال در لینک ارتباطی است (نظیر مشکل در کابل ارتباطی و یا کانکتورها ) .
کارت های شبکه عموما" دارای یک LED دیگر به منظور نمایش وضعیت فعالیت شبکه می باشند . مثلا" در مواردی که LED فوق در وضعیت چشمک زن ( blinking ) باشد ، نشاندهنده ارسال و یا دریافت داده توسط کارت شبکه است .با توجه به این که استانداردهای متفاوتی ممکن است در این رابطه استفاده شده باشد ، می بایست به منطور آشنائی با عملکرد هر LED به مستندات کارت شبکه مراجعه نمود .اکثر سوئیچ ها و هاب ها نیز دارای یک LED به منظور نمایش وضعیت لینک ارتباطی با دستگاه موجود در شبکه می باشند ، بنابراین در صورت بروز اشکال می توان وضعیت این LED را نیز بررسی نمود .
در صورت اطمینان از وجود اشکال در لینک ارتباطی ، می توان مراحل زیر را به منظور رفع اشکال دنبال نمود :
بررسی تمامی کانکتورها به منظور حصول اطمینان از اتصال درست آنان در سوکت مربوطه
اطمینان از تنظیم صحیح کارت شبکه و پورت سوئیچ و یا هاب برای نوع یکسانی از لینک ارتباطی . ( مثلا" یک طرف بر روی سرعت 100Mbps و سمت دیگر بر روی سرعت 10Mbps تنظیم شده باشد و یا ممکن است سوئیچ در حالت full duplex تنظیم شده باشد در حالی که این وضعیت در رابطه با کارت شبکه اعمال نشده است ) .
در صورتی که کارت شبکه ویژگی auto-negotiation را حمایت می نماید ، سعی نمائید ویژگی فوق را بر روی هاب و یا سوئیچ فعال و یا غیر فعال نمائید . در برخی موارد علیرغم این که در مستندات ارائه شده همراه سوئیچ و یا هاب اعلام می شود که آنان دارای ویژگی auto-negotiation می باشند، ولی عملا" ممکن است دارای عملکرد صحیحی در این رابطه نباشند . در چنین مواردی می بایست به صورت دستی اقدام به تنظیم و پیکربندی مناسب پورت هاب و یا سوئیچ نمود.
استفاده از پورت دیگری بر روی سوئیچ و یا هاب
استفاده از یک کابل دیگر که نسبت به صحت عملکرد آن اطمینان دارید .
نصب مجدد کارت شبکه در اسلات مربوطه
تغییر اسلاتی که کارت شبکه بر روی آن نصب شده است.
بررسی تنظیمات BIOS کامپیوتر . در این رابطه لازم است که مستندات ارائه شده همراه کامپیوتر بررسی گردد تا مشخص شود که آیا می بایست برای آداپتورهای قدیمی PCI اقدام به رزو نمودن IRQ نمود تا آنان از IRQ مشابهی استفاده ننمایند . در برخی از کامپیوترها می توان یک اسلات PCI را با استفاده از برنامه BIOS فعال و یا غیرفعال نمود . ( در صورت حمایت BIOS ) .
استفاده از یک کارت شبکه سالم تا مشخص گردد که آیا مشکل لینک ارتباطی همچنان وجود دارد .
در صورتی که پس از بررسی موارد اشاره شده همچنان مشکل وجود داشته باشد ، کارت شبکه را بر روی یک سیستم که نسبت به عملکرد صحیح آن اطمینان وجود دارد ، نصب نمائید . در صورتی که کارت شبکه وظایف خود را بر روی سیستم جدید به درستی انجام می دهد ، مشخص خواهد شد که مشکل مربوط به کارت شبکه نبوده و ممکن است سیستم دارای یک مشکل سخت افزاری و یا نرم افزاری باشد .
در صورتی که پس از بررسی موارد اشاره شده در بخش اول این مطلب ، مشکل کارت شبکه همچنان وجود داشته باشد، می توان کارت شبکه را بر روی یک سیستم که نسبت به عملکرد صحیح آن اطمینان وجود دارد ، نصب نمود . در صورتی که کارت شبکه وظایف خود را بر روی سیستم جدید به درستی انجام داد ، مشخص خواهد شد که مشکل مربوط به کارت شبکه نبوده و ممکن است سیستم دارای یک مشکل سخت افزاری و یا نرم افزاری خاص باشد .
اجرای برنامه اشکال زدائی ارائه شده به همراه کارت شبکه
تقریبا" به همراه تمامی کارت های شبکه حتی آنانی که به عنوان plug&Play ارائه می شوند ، یک فلاپی دیسک عرضه می گردد که بر روی آن درایورهای نرم افزاری و یک برنامه اشکال زدائی وجود دارد . برای اجرای برنامه های عیب یابی ارائه شده همراه کارت های شبکه ، عموما" می بایست کامپیوتر را با سیستم عامل DOS راه اندازی ( Boot ) نمود . بدین منظور برخی از کارت های شبکه به همراه یک فلاپی دیسک ارائه می گردند که Bootable نیز می باشد . زمانی که از برنامه های عیب یابی استفاده می گردد، می بایست اطمینان داشت که درایور و یا مدیر حافظه اضافه ای در حافظه مستقر نشده باشد . ( پیشگیری از conflict ) . توجه داشته باشید که منظور از DOS ، پنجره خط دستور ویندوز نمی باشد ، کامپیوتر می بایست با سیستم عامل DOS راه اندازی گردد .
تست هائی را که می توان با استفاده از برنامه های عیب یابی انجام داد به نوع برنامه ارائه شده بستگی دارد. پس از اجرای برنامه های عیب یابی با استفاده از منوی ارائه شده می توان یک و یا چندین تست را انجام داد . تست های فوق می تواند شامل بررسی وضعیت سخت افزار کارت شبکه و یا تست loopback باشد . برخی از کارت ها تست echo را نیز انجام می دهند. در چنین مواردی دو کارت شبکه از یک تولید کننده یکسان قادر به مبادله بسته های اطلاعاتی بین یکدیگر می باشند .
در صورتی که کارت شبکه تمامی تست های ارائه شده توسط برنامه عیب یابی را با موفقیت به اتمام نرساند و این اطمینان نیز وجود دارد که اسلاتی که کارت شبکه در آن نصب شده است ، مشکل خاصی ندارد ، می توان با احتمال بسیار زیاد مشکل را در ارتباط با کارت شبکه تشخیص داد و به منظور رفع اشکال ، آن را با کارت دیگر جایگزین نمود .
از روش فوق در زمان نصب یک کارت شبکه جدید نیز می توان استفاده نمود . با این که اکثر کارت های شبکه را می توان با استفاده از برنامه کمکی Add/Remove Hardware نصب نمود ، برای نصب برخی از کارت های شبکه می بایست از برنامه های نصب موجود بر روی فلاپی دیسک و یا CD همراه کارت شبکه، استفاده نمود.
دسته بندی | کامپیوتر و IT |
بازدید ها | 9 |
فرمت فایل | doc |
حجم فایل | 469 کیلو بایت |
تعداد صفحات فایل | 33 |
انتقال داده ها، شبکه های کامپیوتری و سیستم های توزیع شده
در دنیای امروز که میتوان آن را عصر اطلاعات نامید، انتقال دادهها (Data Commonication) و شبکههای کامپیوتری (Computer Networks) که حاصل پیوند دو صنعت کامپیوتر و مخابرات است، از اهمیت ویژهای برخوردار میباشد. هدف از پیدایش شبکههای کامپیوتری، اتصال کامپیوترهای مستقل از طریق یک فناوری واحد و قوانین مشخص به منظور انتقال دادهها و اشتراک منابع است. منظور از انتقال دادهها، ارسال و دریافت دادهها به صورت پیوسته آنالوگ یا گسسته دیجیتال بر روی رسانههای مختلف انتقال مانند زوج سیم به هم تابیده، فیبر نوری، هوا و غیره میباشد.
توجه کنید که اینترنت و وب، هیچکدام یک شبکه کامپیوتری نمیباشند. اینترنت (Internet)، شبکه شبکهها است و از به هم پیوستن هزاران شبکه نامتجانس و گوناگون که هر کدام از آنها فناوری و قوانین مخصوص به خودش را دارد به وجود آمده است. اما وب گسترده جهانی (WWW. World Winde Web) نمونهای از یک سیستم توزیع شده است. یک سیستم توزیع شده، مجموعهای از چندین کامپیوتر مستقل است که از دید کاربر به صورت یک سیستم نامرئی (Transparent)، متمرکز (Centeralized) و متجانس به نظر میرسد و کاربر به جای نگرانی در مورد به خاطر سپردن آدرسها (مثلا آدرس اینترنتی IP)، هر چیز را از طریق نام آن فراخوانی مینماید (مثلا در وب همه چیز به صورت سند یا صفحه وب است و از طریق نام URL قابل دستیابی است و این نامها به صورت خودکار توسط خدمتگزارهای نام حوزه به آدرس IP تبدیل میشوند.) همچنین دقت کنید که وب، میان افزار (Middleware) است و یک لایه نرمافزاری میباشد که در یک محیط ناهمگن بر روی سیستم عاملهای متنوع مستقل قرار دارد، اما ایده سیستمهای عامل توزیع شده، وظیفه ایجاد یک تصویر متمرکز از کامپیوترهای مستقل را بر عهده سیستم عامل واحد توزیع شده میسپارد.
کاربردهای شبکه
امروزه با گسترش اینترنت و جهانی شدن وب، کاربردهای شبکههای کامپیوتری از تنوع زیادی برخوردار است که برای نمونه، چند مورد از آنها عبارتند از: جستجو و تحقیق و دسترسی به اطلاعات به روز پراکنده در دنیا، تجارت الکترونیکی، خرید، فروش و حراج کالا، آموزش از راه دور و دانشگاه مجازی، دولت الکترونیکی، درمان از راه دور، کنفرانس صوتی و تصویری از راه دور، کنترل، مدیریت و نظارت بر سیستمهای صنعتی از راه دور، پست الکترونیکی، پیامرسانی فوری، گروههای خبری، گفتگو و گپ زدن، بازی و سرگرمی تعاملی، پخش فیلمهای درخواستی، کمک به ایجاد واقعیت مجازی و دهها کاربرد دیگر.
اجزای شبکه
شبکههای انتقال داده از سه بخش عمده تشکیل میشوند:
کامپیوترهای میزبان (Host) که هدف اصلی ایجاد شبکه، اتصال کامپیوترهای میزبان به یکدیگر است.
پردازندههای واسط مانند هابها (Hub)، تکرار کنندهها (Repeater)، پلها (Bridge)، سوئیچها (Switch) و مسیریابهای (Router) میانی که وظیفه مدیریت شبکه و هدایت ارسال دادهها از مبدأ و مقصد را بر عهده دارند. مدل ریاضی شبکههای کامپیوتری یک گراف است که در آن، گرهها (Nodes) همان پردازندههای واسط هستند.
لینکهای ارتباطی (Link) که در واقع رسانههای انتقال داده هستند و با اتصال گرههای شبکه به یکدیگر انتقال دادهها را بر عهده دارند.
پردازندههای واسط و لینکهای ارتباطی زیر شبکه انتقال داده (Communication Subnet) را تشکیل میدهند.
1-1 طبقهبندی شبکهها
شبکههای کامپیوتری از نظر اندازه و گستردگی جغرافیایی به 5 دسته تقسیم میشوند:
شبکههای شخصی (PAN: Personal Area Networks) که بر روی میز کار یا فاصله چند متری یک شخص هستند. مانند ارتباط بیسیم اجزای کامپیوتر با کامپیوتر شخصی (PC) و دستیار دیجیتالی (PDA) و یا حتی کامپیوتر پوشیدنی (Wearable Computer) شخص.
شبکههای محلی (LAN: Local Area Networks) که دارای گستردگی در حد یک ساختمان یا یک کمپ کوچک میباشند.
شبکههای شهری (MAN: Metropolitan Area Networks) که دارای گستردگی در حد یک شهر میباشند.
شبکههای گسترده (WAN: Wide Area Networks) که دارای گستردگی بیش از حد یک شهر ( در حد استان، کشور یا قاره) میباشند.
شبکههای جهانی که همان شبکه شبکهها یا اینترنت است.
انواع فناوری انتقال
به طور کلی دو نوع فناوری انتقال داده وجود دارد:
نقطه به نقطه (Point to point) یا همتا به همتا (Peer to peer) یا تک پخشی (Unicast) که دادههای ارتباطی از طریق لینکها و گرههای میانی به طور مستقیم بین دو ماشین مبدأ و مقصد مبادله میشود. (مانند شبکههای تلفنی)
انتشاری (Broadcast) که به آن داده پراکن یا پخشی نیز میگویند و در آن همه ماشینها به یک کانال مشترک متصل شده و دادهها بر روی کانال انتقال داده منتشر میشود و کلیه ماشینها به دادهها روی کانال دسترسی دارند (مانند انتشار رادیویی). این ماشینها با توجه به آدرس مقصد بستهها آنها را برداشته یا دور میاندازند.
البته در بعضی از شبکههای انتشاری امکان ارسال دادهها از مبدأ به گروهی از مقصدها وجود دارد که به آن پخش گروهی یا چند پخشی (Multicast) یا (Point to Mutltipoint) گویند.
همبندی (Topology)
منظور از همبندی یا توپولوژی نحوه اتصال گرههای تشکیل دهنده گراف شبکه از طریق لینکهای ارتباطی است. ساختار و توپولوژی شبکههای کامپیوتری بر اساس ماهیت کانالهای (Channel) انتقال داده و فناوری انتقال به دو دسته اصلی (نقطه به نقطه و انتشاری) تقسیم میشود.
انواع توپولوژی Point to point
چندین نوع توپولوژی در شبکههای نقطه به نقطه مورد استفاده قرار میگیرد، مانند:
انواع توپولوژی Broadceast
چندین نوع توپولوژی در شبکههای انتشاری مورد استفاده قرار میگیرد، مانند:
2-1 روند پیشرفت شبکههای کامپیوتری
در ابتدا طراحی شبکههای کامپیوتری به صورت موردی و خاص و با معماریهای گوناگون و ناسازگار با یکدیگر انجام میشد و هر شرکت معماری و روش غیر استاندارد خودش را داشت. بنابراین قابلیت اتصال به کامپیوترهای شرکتهای دیگر وجود نداشت و به همین دلیل به آنها شبکههای بسته (Closed Networks) گفته میشد. برای مثال شکل 1 دو کامپیوتر را نشان میدهد که به طور مستقیم به یکدیگر متصل شدهاند. اینگونه شبکهها از نوع شبکههای خصوصی با وسعت یک شرکت (Enterprise Networks) بودند.
دسته بندی | برنامه نویسی |
بازدید ها | 13 |
فرمت فایل | doc |
حجم فایل | 33 کیلو بایت |
تعداد صفحات فایل | 41 |
آموزش کار با PHP
مقدمه
PHP یک زبان اسکریپتی سمت سرور (Server Side) می باشد که امروزه بیش از نصفی از وبسایتهای مطرح جهان، از آن برای حفظ و نگهداری داده ها و ایجاد سایتهای دینامیک و به روز استفاده می کنند.
PHP هم همانند تمامی زبانهای برنامه نویسی Server Side، ترجمه شده و در نهایت به صورت کدهای HTML در اختیار کاربر قرار می گیرد. از این رو کد شما، از دید دیگران پنهان می ماند.
اما فرق PHP با دیگر زبانها چیست؟ یکی از مهمترین رقیبهای PHP، توسط مایکروسافت تحت عنوان ASP که در نسخه جدید به ASP.NET تغییر نام داده است، به وجود آمده و هنوز بحث سر آن است که کدامیک از آنها قویتر و مناسب تر است.
در این مقاله نمی خواهم بگویم که کدام یک بهتر است. هر کس عقاید مربوط به خود را دارد. در زیر به مقایسه این دو زبان می پردازم:
همان طور که مشاهده کردید، هر کدام از آنها دارای معایب و مزایایی هستند و انتخاب آنها، کاملا به عهده خود شماست.
نصب PHP
نصب PHP بر روی ویندوز و IIS کار بسیار آسانی است. اما از آنجا که در این مقاله، علاوه بر آشنایی با PHP، مروری بر پایگاه داده ی MySQL داریم، نیازمند MySQL نیز هستیم. اگر بخواهید تک تک آنها را از اینترنت دانلود کرده و آنها را جداگانه نصب و پیکربندی کنید، می بایست وقت بسیاری را صرف کنید. دانلود آنها (آن هم با یک مودم و اینترنتی که بیش تر از 4KB/S نمی رود) کار بسیار زمان بری است. همچنین برای پیکربندی آنها نیز، مستلزم انجام کارهای نه چندان خوشایند هستید!
بدین منظور، من به شما یک راه ساده تر را پیشنهاد می کنم. XAMPP!
XAMPP یک مجموعه نرم افزاری بسیار جالب است که علاوه بر حجم کم آن (تنها 13MB)، تمامی پکیجهای مورد نیاز شما را شامل می شود:
این در حالی است که فقط خود MySQL به تنهایی، حجمی بیشتر از 10MB دارد.
من از پکیج XAMPP mini win32 Version 1.2 در کامپیوتر خودم استفاده می کنم. آن را می توانید از آدرس زیر دانلود کنید.
http://www.apachefriends.org/download.php?minixampp-win32-1.2.exe
چگونگی نصب XAMPP
نکته: قبل از انجام این عملیات، وب سرور IIS خود (و یا دیگر وب سرورها) را غیر فعال (Disable, Stop) کنید.
پس از دریافت XAMPP آن را در جای مورد نظر خود نصب (Extract) کنید. فرق نمی کند که کجا باشد.
سپس به پوشه ای که XAMPP را در آنجا Extract نموده اید، بروید. فایل setup_xampp.bat را باز کرده تا صفحه سیاهی نمایان شود. عدد 1 را وارد کرده و کلید Enter را فشار دهید تا مراحل نصب آغاز شود.
پس از آنکه نصب به پایان رسید، می بایست سرور شوید. برای اینکار دو فایل apache_start.bat و mysql_start.bat را اجرا کرده و دیگر کاری به آنها نداشته باشید. آنها را Minimize کرده و مابقی کارها را انجام دهید.
حال مرورگر دلخواه خود را باز کرده و عبارت http://localhost (یا http://127.0.0.1) را تایپ نمایید. با انجام اینکار می بایست صفحه بنفش رنگی نمایان شود.
چگونگی اجرا کردن اسکریپتهای PHP به وسیله XAMPP
اسنادی را که خواهان اجرای آن به وسیله XAMPP هستید، می بایست درون پوشه htdocs کپی نمایید. ولی در نوشتن آدرس آن در مرورگر، نیازی به نوشتن این پوشه نیست. به عنوان مثال فایل %XAMPP%\htdocs\weblog\index.php را در مرورگر می بایست به صورت http://localhost/weblog/index.php اجرا نمود...
شروع کار با PHP
در برنامه نویسی هیچ چیز لذت بخش تر از کد نویسی نیست. همین حالا برنامه Notepad خود را باز کرده و کدهای زیر را در آن بنویسید:
این فایل را در محل %XAMPP%\htdocs\PHP\phpinfo.php ذخیره کرده و به وسیله مرورگر خود، آدرس http://localhost/PHP/phpinfo.php را اجرا نمایید. با انجام این کار، صفحه ای که مشخصات PHP نصب شده بر روی سیستم را به شما نشان می دهد، نمایان خواهد شد.
آشنایی با PHP
همان طور که در مثال بالا مشاهده کردید، کد زیر با بقیه کدهای HTML فرق داشت:
?>
این تکه کدی است که به وسیله PHP نوشته شده است. برای نوشتن کدهای PHP، می بایست آنها را در بین تگهای ?> و و قرار داد. همچنین یک راه میانبر نیز است که به صورت =SOMETHING?> به کار می رود. در این مقاله از همان روش ?> و عبارات (Statements)
به طور کلی در PHP، عبارات به دو دسته زیر تقسیم می شوند:
در انتهای هر عبارت PHP، یک علامت سمی کالن (;) قرار می گیرد. به وسیله این علامت، PHP متوجه می شود که یک عبارت به اتمام رسیده و عبارت دیگری در حال شروع است. به مثالهای زیر توجه کنید:
echo("Hello World!");
echo("Mojtaba");
?>
echo("Hellow World"); echo("Mojtaba");
?>
هر دو کد بالا صحیح است. چرا که بعد از اتمام هر یک از عبارت PHP، یک علامت سمی کالن قرار داده شده است. برنامه نویسان معمولا از کد بالایی استفاده می کنند. چرا که در آن، هر یک از کدهای PHP در یک خط مجزا قرار گرفته و در نتیجه نگهداری کد آسان تر خواهد شد. حال به کد زیر توجه کنید:
echo("Hello World!")
echo("Mojtaba")
?>
اجرای این کد سبب خطا می شود. چرا که عبارت در آن از هم جدا نشده است و عبارتی همانند عبارت echo("Hello World") echo("Mojtaba") برای PHP ناآشناست.
تا به اینجای کار، عبارت تک خطی مورد بررسی قرار گرفتند و اما عبارات چند خطی. عبارات چندخطی که به کد بلاک (Code Block) معروف است، در PHP توسط آکولادها { } احاطه می شوند. این عبارات با همدیگر اجرا می شوند. به عنوان مثال در یک عبارت شرطی (عبارات شرطی در جلوتر مورد بررسی قرار می گیرند)، برای PHP تعیین می کنیم که اگر شرط درست بود، این سری عبارات و در غیر این صورت، سری دیگری عبارات را اجرا نماید:
دسته بندی | برنامه نویسی |
بازدید ها | 6 |
فرمت فایل | doc |
حجم فایل | 144 کیلو بایت |
تعداد صفحات فایل | 18 |
آموزش پیاده سازی گرافیکی هشت وزیر با C#
مقدمه
محمد امین شریفی تحصیلات مقدماتی خود را در دبیرستان همیشه ماندگار البرز گذراند و هم اینک دانشجوی سال اول کارشناسی تکنولوژی نرم افزار در دانشگاه آزاد واحد دماوند می باشد.علاقه مند به گسترش برنامه های دات نت و حل کردن مسائل برنامه نویسی با C++ است.
این مقاله در راستای نوشتار کتابچه ای به نام 'پیاده سازی بازی های تخته ای' نوشته شده است و در صورت آشنایی با این برنامه،شما می توانید با انواع بازی های تخته ای مانند reverse, chess, dooz, tic-tac-toe, checkers آشنا شوید،هم اینک بازی reverse و dooz کامل شده است و باقی بازی ها هم در آینده نزدیک نوشته خواهد شد و بطور رایگان در اختیار دانش جویان نرم افزار قرار خواهد گرفت.
این مقاله برای آن دسته از افرادی می باشد که پیشین با C# کار کرده اند و یا قصد آشنایی و برنامه نویسی با این قالب برنامه نویسی را دارند.در این مقاله کوشش شده است که هر بخش مستقل از بخش های دیگر باشد و دوستانی که با C# و یا پیاده سازی گرافیکی تخته بازی آشنایی دارند می توانند با سرعت از این بخش ها عبور کنند و به سراغ الگوریتم بازی بروند.ولی توصیه میکنم که سلسله مراتب بخش ها را هر چند گذرا مرور کنید.
هدف از نوشتن این مقاله آشنا کردن خواننده با الگوریتم هشت وزیر به صورت گرافیکی می باشد. در این بازی ما باید هشت وزیر را بگونه ای در صحه شطرنج بچینیم که هیچ یک از وزیرها، 7 وزیر دیگر را تحدید نکند.در این مقاله، هر 2 نوع پیاده سازی بازگشتی و غیر بازگشتی نوشته شده است.
پس از خواندن این مقاله از دانشجویان انتظار می رود که بتوانند الگوریتم هشت وزیر را تحلیل کرده و مطابق با نیاز خود در محیط های مختلف طراحی و پیاده سازی کنند.
فصل اول : طراحی
گام نخست : پیاده سازی مهره و کاشی بازی
|
|
مهره نشان دهنده وزیر |
|
را ایجاد کنید.eight_queen ای به نام Windows Application برنامه Visual C# را اجرا کنید و از قسمت Visual Studio
SquareControl.cs به نام User Control یک Add new item بر روی پروژه یتان کلیک راست کنید و از قسمت
کاشی صفحه شطرنج ما را می سازدUser control را ایجاد کنید.در واقع این
این کنترل را به 32, 32 تغییر می دهیم.حالا کاشی تخته یمان آماده شد!size
تخته یمان که به شکل دایره است می رسد(Discs)نوبت به طراحی مهره های
این مهره ها را می توان به 2 صورت پیاده سازی کرد:
با قرار دادن عکس وزیر درون کاشی های شطرنج .1
با کشیدن دایره درون کاشی های شطرنج. .2
که در این مقاله راه دوم را برگزیدیم.یعنی با کد زیر دایره ای با رنگ سفید یا سیاه درون کاشی هایمان رسم می کنیم.
e.Graphics.DrawEllipse(SquareControl.pen, left, top, width, height);
را حذف کردیم و آنرا به گام های بعدی محول کرده ایم.shadow و animationدر این گام ما قسمت
|
|
نام دامنه |
پارامتر |
اضافه می کنیم:User controlدر ابتدای کار نام دامنه زیر را
using System.Drawing.Drawing2D;
سپس رنگ کاشی خود را تعیین می کنیم:
public static Color NormalBackColor= Color.Green;
باید متغیری برای ذخیره کردن ردیف و ستون مهره ها ایجاد کنیم.به این دلیل که کدمان حرفه ای تر بشود ، آنها را تعریف کرده ایم:propertyمستقیمان به صورت
// These reflect the position of the square on the board.
Public int col{get;set;}
public int row{get;set;}
در انتها هم رنگ و قلم موی خود را انتخاب می کنیم:
// Drawing tools.
Private static Pen pen = new Pen(Color.Black);
private static SolidBrush solidBrush = new SolidBrush(Color.Black);
گام سوم : تابع تنظیم ردیف و ستون
فهرست
مقدمه. 3
معرفی نویسنده اثر. 3
درباره این مقاله. 3
مخاطبان این مقاله. 3
هدف از نوشتن این مقاله. 3
فصل اول : طراحی. 4
گام نخست : پیاده سازی مهره و کاشی بازی.. 4
گام دوم : تعریف پارامترها و نام دامنه برای User Control ها 5
گام سوم : تابع تنظیم ردیف و ستون. 6
گام چهارم : ایجاد و نابود سازی User Control ها 7
گام پنجم : چیدن مهره ها در صفحه شطرنج. 8
گام ششم : کشیدن حاشیه بین کاشی ها 10
گام هفتم : نگاه کلی بر کلاس SquareControl 11
فصل دوم : پیاده سازی محیط بازی.. 12
گام هشتم : تعریف متغییر های تخته بازی.. 12
گام نهم : پیاده سازی تابع سازنده تخته بازی.. 13
گام دهم : ذخیره 92 حالت مختلف.. 14
فصل سوم : الگوریتم هشت وزیر به روش غیر بازگشتی. 15
گام یازدهم : معرفی الگوریتم 15
گام دوازدهم : روش بررسی صحّت قرار گیری مهره 16
فصل چهارم : الگوریتم هشت وزیر به روش بازگشتی. 17
گام سیزدهم : معرفی الگوریتم 17
گام چهاردهم : روش بررسی صحّت قرارگیری مهره 17