تبليغاتX
دهکده جهانی

 

ویلاگ برتر ماه از دید گروه : www.iranianmind.blogfa.com

این وبلاگ ضمن اینکه در استان قم مقام اول را در مسابقات پرسش مهر کسب کرده  از دید

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

+ نوشته شده در ساعت توسط حمیدرضا شفیعی |

 

زير ساخت اينترنت 

اينترنت از مجموعه ای شبکه  کامپيوتری ( بزرگ ، کوچک ) تشکيل شده  است . شبکه های فوق با روش های متفاوتی به يکديگر متصل و موجوديت واحدی با نام "اينترنت " را بوجود آورده اند. نام در نظر گرفته شده برای شبکه فوق از ترکيب واژه های " Interconnected" و " Network" انتخاب شده است . ( شبکه های بهم مرتبط ).
اينترنت فعاليت اوليه خود را از سال 1969 و با چهار دستگاه کامپيوتر ميزبان (host) آغاز و پس از رشد باورنکردنی خود ، تعداد کامپيوترهای ميزبان در شبکه به بيش از ده ها ميليون دستگاه رسيده است . اينترنت به هيچ سازمان و يا موسسه خاصی در جهان تعلق ندارد. عدم تعلق اينترنت به يک سازمان ويا موسسه به منزله عدم وجود سازمانها و انجمن های خاصی برای استانداردسازی نيست .يکی از اين انجمن ها، "انجمن اينترنت " است که در سال 1992 با هدف تبين سياست ها و پروتکل های مورد نظر جهت اتصال به شبکه تاسيس شده است.

 

سرويس دهندگان وب
امکانات و سرويس های موجود بر روی اينترنت از طريق سرويس دهندگان اينترنت انجام می گيرد. تمام ماشين های موجود در اينترنت سرويس دهنده و يا سرويس گيرنده می باشند. ماشين هائی که برای ساير ماشين ها ، خدماتی را ارائه می نمايند ، سرويس دهنده ناميده می شوند. ماشين هائی که از خدمات فوق استفاده می نمايند ، سرويس گيرنده  می باشند. اينترنت شامل سرويس دهندگان متعددی نظير سرويس دهنده وب ، سرويس دهنده پست الکترونيکی و ... به منظور پاسخگوئی به نيازهای متعدد کاربران اينترنت می باشد.
زمانيکه به يک وب سايت متصل و درخواست يک صفحه اطلاعات می شود ، کامپيوتر درخواست کننده بمنزله يک سرويس گيرنده تلقی می گردد. در اين حالت درخواست شما ( بعنوان سرويس گيرنده ) در اختيار سرويس دهنده وب گذاشته می شود. سرويس دهنده صفحه درخواستی را پيدا و آن را برای متقاضی ارسال خواهد داشت . در مدل فوق کاربران  و سرويس گيرندگان از يک مرورگر وب برای اعلام درخواست خود استفاده و سرويس دهندگان وب مسئول دريافت درخواست و ارسال اطلاعات مورد نظر برای سرويس گيرندگان می باشند.
يک سرويس دهنده دارای يک آدرس IP ايستا ( ثابت ) بوده که تغيير نخواهد کرد. کامپيوتری که با استفاده از آن به اينترنت متصل می گرديد ، دارای يک IP متغير بوده که توسط ISP مربوطه  به شما  اختصاص داده می شود. آدرسIP تخصيص يافته در طول مدت اتصال به اينترنت ( يک جلسه کاری ) ثابت بوده و تغيير نخواهد کرد. آدرس IP نسبت داده به شما در آينده و تماس مجدد با ISP ممکن است تغيير نمايد.  مراکز ISP برای هر يک از پورت های خود يک IP ايستا را نسبت می دهند. بديهی است در آينده  با توجه به پورت مورد نظر که در اختيار شما قرار داده می شود، ممکن است آدرس IP  نسبت به قبل متفاوت باشد.
هر يک از سرويس دهندگان ، سرويس های خود را از طريق پورت های مشخصی انجام می دهند. مثلا" در صورتيکه بر روی يک ماشين ، سرويس دهندگان وب و FTP مستقر شده باشند ، سرويس  دهنده وب معمولا" از پورت  80 و سرويس دهنده FTP از پورت 21 استفاده می نمايند.  در چنين حالتی سرويس گيرندگان از خدمات يک سرويس خاص که دارای يک آدرس IP و يک شماره پورت منخصر بفرد است ، استفاده می نمايند.  زمانيکه سرويس گيرنده ، از طريق  يک پورت خاص به يک سرويس متصل می گردد ، به منظور استفاده از سرويس مورد نظر، از يک پروتکل خاص استفاده خواهد شد.. پروتکل ها اغلب بصورت متنی بوده و نحوه مکالمه بين سرويس گيرنده و سرويس دهنده را تبين می نمايند. سرويس گيرنده وب و سرويس دهنده وب از پروتکل HTTP)Hypertext Transfer Protocol) برای برقراری مکالمه اطلاعاتی  بين خود، استفاده می نمايند.
شبکه ها ، روترها ، NAPs ، ISPs ، سرويس دهندگان DNS  و سرويس دهندگان قدرتمند، همگی سهمی در شکل گيری و سرويس دهی بزرگترين شبکه موجود در سطح جهان ( اينترنت ) را برعهده دارند. عناصر فوق در زندگی مدرن امروزی جايگاهی ويژه دارند. بدون وجود آنها ، اينترنتی وجود نخواهد داشت و بدون وجود اينترنت ، زندگی امروز بشريت را تعريفی ديگر لازم است !

 

+ نوشته شده در ساعت توسط حمیدرضا شفیعی |

 

هاست خوب چه شرایطی دارد و ميزبان خوب كيست ؟

از زمانی كه اينترنت و سايتهای وب به جمع خانواده بزرگ علوم كامپيوتر پيوستند، ميزبانی وب مفهوم پيدا كرد. هر وب سايت فضايی را روی يكی از سرورها در شبكه اينترنت نياز دارد كه محتويات سايت روی آن سرور قرار گيرد. شركتهايی كه اين خدمات را ارائه ميدهند، شركتهای "ميزبان وب" نام دارند. در ظاهر تمام اين شركتها خدمات مشابهی ارائه ميدهند: ‌اجاره دادن فضايی معين برای اينكه شخص يا شركت صفحات سايت خود را برای مدت معينی بر روی سرورهای آن شركت قرار دهد. اما اين كل ماجرا نيست. دهها پارامتر در نوع سرويس دهی اين شركتها دخيل هستند كه بی توجهی به هر يک از اين پارامترها و توجه به شعارهای بی پايه و قيمتهای بسيار پايين برخی از شركتها، ضررهای جبران ناپذيری را به اشخاص و وب سايتهای آنها ميرساند. در اينجا سعی مینماییم که مهمترين پارامترها را معرفی کنیم. ذكر اين نكته ضروری است كه از ميان تمامی موارد ذيل، دو اصل كلی مهمترين نقش را در انتخاب شركت مناسب دارند كه هيچ يك به تنهايي قادر به راضی كردن مشتری نخواهد بود:

كيفيت سرويس و پشتيبانی از مشتری.

قابليت اطمينان: هنگام انتخاب شركت ميزبان،‌ بايد به سرعت، سخت افزار، نرم افزار و تنوع ارتباطات اينترنت آن شركت توجه داشت. قابليت اطمينان يك سرور، يعنی زمان بالا بودن سرور و بالطبع سايت شما بيشتر از زمان پايين بودن آن باشد. هم اکنون، در کلیه سرورهای ایران مارکت سنتر، از جدیدترین نرم افزارهای مدیریت هاست ( Cpanel ) و کاملترین پروتکلهای امنیت استفاده میشود که قابلیت اطمینان را در حد بسیار بالایی حفظ مینماید.

زمان بالا بودن سرور: داشتن تنوع ارتباطهای اينترنتی در شركتهای ميزبان (محل استقرار سرورها) نكته مهمی است كه بايد حتما مد نظر داشت. هر چه تعداد ارتباطهای اينترنی بيشتر باشد، اندازه و سرعت سرورها بيشتر بوده و در نتيجه با قطع شدن احتمالی يك ارتباط اينترنتی، سرور و سايت شما همچنان ارتباط خود با اينترنت را برقرار ميبيند و بالا خواهد بود. (اين پارامتر برای شركتهای ايرانی كه اكثر قريب به اتفاق آنها سرورهايشا ن در خارج از ايران است، برای محل استقرار سرورها مصداق دارد.) شركتهايی در كشورهای پيشرفته آمريكايی و اروپايی وجود دارند كه بصورت تخصصی، فعاليتشان تامين اماكنی است كه ويژگيهای لازم برای استقرار سرورهای ميزبان را داشته باشد كه اصطلاحا مراكز داده ناميد ميشوند. طبق آمار رسمی سایت www.hyperspin.com ، سرورهای ایران مارکت سنتر در 99.999% مواقع بالا است.

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

حفاظت در برابر قطعی برق: حفاظت در برابر قطعی برق نيز پارامتر مهمی است كه بايد حتما آنرا در نظر داشت. هر چند كه در خارج از ايران و خصوصا در مراكز داده در كشورهای آمريكايی و اروپايی، امكان قطعی برق كمتر از 5% است، ولی وجود باتری يا ژنراتور برای در دسترس بودن دائم سايت شما حائز اهميت ميباشد.

حفاظت در برابر بلايای طبيعی: وقوع بلايای طبيعی هيچوقت قابل پيش بينی نيست و حتی شايد برای يك شخص فنی، اين فاكتور خيلي مهم نباشد. ولی براي صاحب يك سايت مهم تجاری، بايد اين مساله مهم باشد كه محل نگهداری سرورها چه وضعيتی دارد. مسلما مراكز داده، ‌با توجه به تخصصشان در اينگونه امور، در هنگام ساخت محلهای نگهداری سرورها، به اين مسائل توجه كافی دارند.

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

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

تنوع خدمات: تنوع خدمات يك شركت، پارامتری است كه برای مشتری اهميت دارد. هر چه خدماتی كه شركت ميزبان ارائه دهد متنوع تر و كامل تر باشد، مشتری در انتخاب سرويس خود، راحت تر تصميم ميگيرد. قيمت مناسب سرويسها نيز ميتواند قابل ذكر باشد.

ميزان امنيت سرور: امن بودن سرورها از نظر مشتری بسيار مهم است. تنظيمات سرورها، وجود سرورهای مجزای مخصوص هر سرويس،‌ وجود ديواره های آتش، وجود نرم افزارهای ضد ويروس، سياستهای مقابله با خرابكاران و مدت زمان عكس العمل پس از حملات احتمالی خرابكاران، پارامترهايی است كه بايد به آنها توجه داشت. اين نكته را هم در نظر داشته باشيد كه هيچگاه سراغ شركتی كه ادعا ميكند هيچوقت مورد حمله قرار نخواهد گرفت نرويد. چون يا با شما صادق نيستند و يا اصلا هيچ تخصصی در زمينه فعاليتی كه ميکنند ندارند.

+ نوشته شده در ساعت توسط حمیدرضا شفیعی |

 

جان بکوس در سال 1924 در فیلادلفیا متولد شد. دوران تحصیلات ابتدائی و متوسطه را در پنسیلوانیا گذراند. او شاگرد تنبلی بود و از خواندن کتابهای درسی نفرت داشت. بالاخره با زحمت زیاد در سال 1942 مدرسه را تمام کرد و وارد دانشگاه ویرجینیا شد. پدرش می‌خواست که او شیمیدان شود. او دروس نظری را دوست داشت ولی از آزمایشگاه بدش می‌آمد. او تنبلیهای قبلی را در دانشگاه ادامه داد. بعد از دو ترم او تنها یک واحد را گذرانده و آنهم واحد موسیقی بود! سرانجام مسوولان دانشکده عذرش را خواستند و او در سال 1943 به ارتش پیوست.
در آنجا در یک آزمون استعدادسنجی شرکت کرد و نتیجه این آزمون، جانش را نجات داد؛ دوستانش به جبهه‌های جنگ فرستاده شدند و او به کالج هاورفورد برای آموزش پزشکی. اما درآنجا نیز 9 ماه بیشتر دوام نیاورد.
پس از خروج از دانشکده پزشکی، آپارتمان کوچکی در نیویورک به قیمت ماهانه 18 دلار اجاره کرد. او درباره آن روزها می‌گوید:
«واقعاً نمی‌دانستم از زندگی چه می‌خواهم. تصمیم گرفتم یک دستگاه صوتی خوب خریداری کنم زیرا خیلی به موسیقی علاقه داشتم. در آن روزها دستگاه خوب وجود نداشت بنابراین به یک مدرسه فنی رفتم تا درست کردن دستگاههای صوتی را یاد بگیرم. در آنجا معلم بسیار خوبی داشتم نخستین معلم خوبی بود که دیده بودم . او از من خواست که با او همکاری کنم و مشخصات بعضی از مدارها را محاسبه کنم. به یاد دارم که محاسبات ساده ولی بسیار وقتگیر و خسته‌کننده‌ای بود ولی مرا به ریاضیات علاقه‌مند ساخت. کاربردی بودن آن برایم خیلی جالب بود.»
بکوس در دانشکده علوم دانشگاه کلمبیا ثبت نام کرد تا با درسهای ریاضی بیشتر آشنا شود. او علاقه‌ای به ریاضیات نداشت ولی از جبر بدش نمی‌آمد. در بهار سال 1949، بکوس 25 ساله که تنها چند ماه تا اخذ لیسانس ریاضی فاصله داشت، هنوز برنامه خاصی برای زندگی آینده‌اش نداشت. در آن روزها یکبار بازدیدی از مرکز رایانه شرکت آی‌بی‌ام داشت و از نزدیک با ماشین حساب الکترونیکی SSEC که یکی از نخستین ماشینهای الکترونیکی آی‌بی‌ام(با لامپ خلاء) بود آشنا شد. این ماشین اطلاق بزرگی را اشغال کرده بود و انباشته از سیمها و لامپهای خلاء بود. ناگهان فکری به سرش زد و به راهنمای تور گفت که به دنبال کار می‌گردد. او به بکوس گفت که باید با مدیر قسمت صحبت کند. او ابتدا امتناع کرد زیرا سر و وضع مناسبی نداشت ولی با اصرار راهنمای تور به دیدار مدیر مربوط رفت و سپس در آزمونی شرکت کرد. نتیجه آزمون رضایت‌بخش بود و او به استخدام آی‌بی‌ام در آمد تا بر روی SSEC کار کند. SSEC یک رایانه به مفهوم امروزی نبود. حافظه‌ای برای ذخیره نرم‌افزار نداشت و برنامه‌ها را باید از طریق نوار منگنه کاغذی به آن می‌خوراندند. همچنین به دلیل به کار رفتن هزاران مولفه الکترومکانیکی، این ماشین قابلیت اطمینان پائینی داشت.
«کار کرد با SSEC جالب بود. همه چیز در اختیار خود آدم بود. باید بالاسر آن حاضر می‌بودیم زیرا هر دو سه دقیقه یکبار از کار می‌افتاد و باید می‌دانستیم که چگونه آن را دوباره به راه اندازیم.»
او 3 سال با SSEC کار می‌کرد و در خلال این مدت چیزهای زیادی آموخت. برنامه‌سازی هنوز در مراحل اولیه‌اش قرار داشت و بکوس نیز نخستین تجربیاتش را در زمینه محاسبات علمی کسب کرد.
بکوس یکی از نخستین و محبوبترین زبانهای برنامه‌سازی را اختراع کرده بود و همچنین مجموعه علائمی ارائه نموده بود که به کمک آن، تعریف صدها زبان برنامه‌سازی دیگر نیز امکانپذیر می‌شد. بسیاری از افراد، حتی دانشمندان بزرگ نیز از چنین دستاوردهای با ارزشی ارضا می‌شوند ولی بکوس اینگونه نبود. او کاری که کرده بود را زیاد دوست نداشت. او می‌گوید:
«شما وقتی به یک برنامه فرترن نگاه می‌کنید به سادگی نمی‌توانید سردرآورید که آن برنامه چکار می‌کند. دو عدد را می‌گیرد، آنها را در هم ضرب می‌کند، سپس در جایی ذخیره می‌کند، بعد این آزمایش را می‌کند، سپس فلان کار را می‌کند و ... به این ترتیب سر در آوردن از اینکه بالاخره این برنامه چکار می‌کند واقعاً دشوار است.»
هدف بکوس این بود که برنامه‌سازان را قادر سازد که مشخص کنند چه کاری می‌خواهد انجام گیرد، بدون آنکه درگیر چگونه انجام شدن آن گردند. بکوس این ایده را به هنگام دریافت جایزه تورینگ در سال 1977 بیان داشت.

عنوان سخنرانی او چنین بود: «آیا می‌توان برنامه‌سازی را از سبک فن نویمان آزاد ساخت؟» البته اشاره او به فن نویمان، ارتباطی به مخالفت قبلی این ریاضیدان برجسته با تولید زبان فرترن نداشت بلکه برعکس، بکوس به نحوه در نظر گرفتن رایانه‌ها از سوی فن نویمان به عنوان پردازنده‌های متصل به حافظه‌های شامل برنامه‌ها و داده‌ها، اشاره داشت. به عقیده بکوس، این نحوه در نظر گرفتن رایانه به طور ضمنی، فرآیند چرخشی زیر را القاء می‌کند: گرفتن داده‌ها از حافظه، انجام عملیات روی آنها، و برگرداندن نتیجه به حافظه. به اعتقاد وی، زبانهای برنامه‌سازی به خاطر پیروی از این الگو، وضوح و روشنی را از دست می‌دهند. به عنوان راه‌حلی برای این مشکل، بکوس با اقتباس از کارهای مک‌کارتی در زمینه زبان لیسپ (که بیشتر در کاربردهای هوش مصنوعی به کار می‌رود) و کنت ایورسون در زمینه زبان APL، زبان FP را عرضه کرد. هدف اصلی، ساختن برنامه مستقیماً از روی توابع ریاضی بود.
تفاوت اصلی بین زبانهای عادی (فن نویمانی) و زبانهای تابعی مانند FP این است که زبانهای عادی صریحاً محتویات حافظه را تغییر می‌دهند ولی زبانهای تابعی به ترکیب تابع اتکا دارند. برای روشنتر شدن موضوع، مساله حاصلضرب درونی دو آرایه را در نظر بگیرید. در یک زبان استاندارد فن نویمانی این عمل کم و بیش به شکل زیر نوشته می‌شود:

بکوس انتقادات زیادی به این شیوه برنامه‌سازی داشت که 2 مورد عمده آن چنین بود: محتوی C به طور مرتب تغییر می‌کند، بنابراین تنها راه درک برنامه، فهمیدن این نکته است که در هر بار تغییر، یک حاصلضرب جدید به مجموع قبلی افزوده گردد. بنابراین، فرد باید به منظور درک برنامه، بتواند به طور ذهنی کد برنامه را اجرا کند. و دوم آنکه در برنامه به پارامترها (بردارها (a‌ و b) و طول آنها (n)) نام داده شده است و برای کار با بردارها به طور کلی، باید این پارامترها به عنوان پارامتر مرجع فرستاده شوند. ولی در FP مساله حاصلضرب درونی دو آرایه را می‌توان به شکل زیر تعریف کرد:

Def Inner Product = (insert + )(Apply To All)(Transpose)


به گفته بکوس، این شکل 3 مزیت اساسی دارد. اول آن که هیچ وضعیت پنهانی وجود ندارد (مثل متغییر C در برنامه فوق). دوم آنکه برای هر دو بردار هم طولی کار می کند زیرا پارامترها را نامگذاری نمی‌کند (بنابراین مساله انتقال پارامتر را از میان بر می‌دارد) و سوم آنکه علائمی برای عملیات تکراری وجود ندارد.
هر مرحله دقیقاً یکبار بر روی نتیجه مرحله قبل اعمال می‌شود (این فرایند «ترکیب» خوانده می‌شود).
زبانهای تابعی به دو دلیل خیلی مورد توجه قرار نگرفتند. نخست آن که ترجمه کارآمد برنامه‌های نوشته شده به این گونه زبانها بسیار دشوار است و دیگر اینکه زبانهای تابعی برای برخی از انواع کاربردها مناسب نیستند، خصوصاً کاربردهایی که شامل گرفتن داده‌ها، بهنگام رسانی آنها و باز گرداندن آنها به پایگاه داده‌هاست. کاربردهایی مانند بهنگام رسانی موجودی حساب بانکی، ذاتاً با الگوی فن نویمانی همخوانی دارند.
بکوس در سال 1991 بازنشسته شد و از دنیای علوم کامپیوتر و حتی علوم کناره گرفت. از آن تاریخ دانشمندان دیگر کار بر روی زبانهای تابعی و حل مشکل آنها را ادامه داده‌اند. او خود به درون‌نگری و مکاشفه پرداخته است و می‌گوید:
«اغلب دانشمندان به این دلیل دانشمند شده‌اند که از مواجهه با زندگی می‌هراسیده‌اند. آنها در کنج آزمایشگاه‌ها یا کتابخانه‌ها از خلاقیت علمی خود لذت برده‌اند بی‌آنکه با مردم مواجه شوند و مشکلات ناشی از ارتباط با دیگران را تجربه کنند و راه خود در زندگی را هموار کنند. دنیای خود ساخته آنها بسیار جالب است. دنیای پر از امکانات ارضاء‌کننده و شادی‌بخش و خالی از رنج و ناراحتی. ناراحتی و مشکلات حل یک مساله در مقایسه با ناراحتیهایی که افراد عادی در زندگی با آنها مواجهه می‌شوند بسیار ناچیز است.
مکاشفه و درون‌نگری یک فعالیت علمی نیست: تکرار شدنی نیست و نظریه‌های دقیقی در مورد چگونگی انجام آن و آنچه انتظار دستیابی به آن را دارید وجود ندارد. انسان با تعمق و نگاه به درون خود، واقعاً از عظمت عالم خلقت شگفت‌زده می‌شود. احساسی که هیچگاه با یافتن قوانین فیزیکی به آدم دست نمی‌دهد.»

+ نوشته شده در ساعت توسط حمیدرضا شفیعی |

يکي از کاراترين نرم افزار هاي تبديل ويديو

 

A-Z Video Converter Ultimate نام نرم افزاري مي باشد که به کمک آن شما قادر به تبديل فرمت فايل هاي تصويري خواهيد بود. در اين نرم افزار شما ازقابليت تبديل فرمت هاي تصويري برخوردار مي باشيد و مي توانيد تصاوير مختلف را با بهترين حالت تنظيمات پيشفرش به فرمت مورد نظر خود تبديل نماييد. اين نرم افزار توسط کمپاني CNN-video طراحي و ساخته شده است. اين نرم افزار از فرمت هاي متنوع و مختلفي همانند AVI, DivX, XviD, MPEG, WMV, MOV, ASF, QuickTime, RM, RMVB into AVI, DivX, XviD, DVD, SVCD, VCD, MPEG-1, MPEG-2, WMV, ASF, RM or RMVB را پشتيباني مي کند.
قابليت منحصر بفردي که اين نرم افزار در اختيار شما قرار مي دهد آنست که شما امکان تبديل سريع ويدوئو هاي خود را به فرمتي که قابل استفاده در MP4 يا سيستمهاي پرتابل مانند : Sony PSP, Apple ipod video, 3G cell phone, PMP, xbox … است را دارا بوده و بدين ترتيب مي توانيد حتي کارتون مورد دلخواه فرزندتان را در مسافرت براي او به نمايش بگذاريد.
حجم دانلود: 15.2 مگابايت
از ويژگي هاي ديگر اين نرم افزار مي توان به موارد زير اشاره نمود:
- قابليت تبديل فرمت فايل هاي تصويري
- پشتيباني از فرمت هاي AVI, Divx,Xvid, ASF, WMV, MPEG, MOV, QT, RM, RMVB,QuickTime,MPG براي تبديل
- توانايي ذخيره سازي و تبديل فايل ها به AVI /Divx/Xvid ، MPG/VCD/SVCD/DVD/MPEG1/MPEG2 ، RM/RMVB ،WMV/ASF
- توانايي ذخيره سازي فايل هاي تبديل شده در فرمت برنامه QickLunch
و … .


Download دانلود کنید

 

+ نوشته شده در ساعت توسط حمیدرضا شفیعی |

 

اندازه متن:  1  2  3  4 

متغييرها و عملگرهاي JS
بعد از يك تاخير كوتاه مدت دوباره وارد دنياي زيباي JS مي شويم .در درسهاي قبل مطالب مقدماتي مهمي را تحت پوشش قرار داديم تا با زمينه اي مطلوب وارد بخش تجربي و عملي آموزش JS بشويم . در اين درس علائم رياضي كه در JS كاربرد دارند را بررسي مي كنيم . در ابتدا به مفهوم «متغيير» مي پردازيم . در توضيحي بسيار ساده بايد بگويم ، متغيير مانند يك جعبه مي باشد كه بر اساس نوعش مي تواند اشياء و مقادير مختلفي را در خود جاي دهد . طبيعي است كه هر يك از اين جعبه ها بايد براي خودش اسم خاص و منحصر به فردي داشته باشد تا از ديگر جعبه ها مجزا شده و قابل تمييز دادن باشد . متغيير ها نيز دقيقا حكم اين جعبه ها را دارند ، مقادير خاصي را مي پذيرند و با نام خاصي از بقيه جدا مي شوند . و اما انواع متغيير ؛ يكي از معمول ترين و معروفترين نوع متغيير ها ، متغيير هاي عددي(numeric variables) هستند كه مي توانند اعداد مختلف را بدون محدوديت رقمي در خود جاي دهند . از اين متغيير ها مي توان براي اعداد اعشاري و منفي نيز استفاده كرد . براي مثال وقتي ما مي خواهيم عدد 348/3242 را به متغييري به نام mark نسبت دهيم بايد به اين صورت ، عمل مقدار دهي را انجام دهيم :

mark=3242.348

نوع ديگري از متغيير ها در JS متغيير هاي رشته اي (string variables) هستند كه مي توانند يك متن يا عبارت را در خود جاي دهند به عنوان مثال اگر بخواهيم عبارت world wide web را به متغيير www نسبت دهيم به اين صورت عمل مي كنيم :
www="world wide web"

توجه داشته باشيد كه بايد در آغاز و پايان عبارت علامت " (quotation mark) را قرار بدهيم .

دانستن اين نكته بسيار مهم است كه هيچگاه دو متغيير mark=3242.348 و "3242.348"=mark با هم برابر نيستند زيرا اولي يك متغيير عددي و دومي يك متغيير رشته اي است !!! پس هيچگاه از علامت "" براي متغيير هاي عددي استفاده نكنيد . نكته مهم ديگر اين است كه نبايد در قسمت نام متغيير از علامت فاصله (space) استفاده كنيد به عنوان مثال متغيير w w w هرگز براي Java Script قابل قبول نيست و يك خطاي برنامه نويسي محسوب مي شود . متغيير منطقي (Boolean variables) نوعي از متغيير است كه نسبت به بقيه انواع متغيير ها محدود تر است ، بدين معني كه فقط دو مقدار TRUE (درست) و False (نادرست) را مي پذيرد . از متغيير بولين (منطقي) اكثرا در نوشتن شرط ها در JS استفاده مي شود . و اما متغيير شئ (Object Variables) كه از انواع مهم متغيير هاست . اين نوع از متغيير در اكثر برنامه هاي JS كاربرد دارد و در ان يك شئ يا اتفاق مربوط به آن شئ ذخيره مي شود . مثلا وقتي مي خواهيم شئ به اسم Core را در داخل متغييريبه نام Attribute جاي دهيم بدين صورت عمل مي كنيم:

Attribute=core

در مورد اين نوع متغيير در درس هاي آينده توضيحات بيشتري خواهم داد .

در پايان بحث مربوط به متغيير ها بهتر از به نكات بسيار مهم زير توجه كنيد :

_ زبان JS در تعريف نام متغيير ها به حروف بزرگ و كوچك حساس است يعني هيچگاه متغييرهاي Www ، WWW و www با هم برابر نيستند و JS هر يك را متغييري جداگانه مي داند .

_ هيچگاه نام يك متغيير با عدد شروع نمي شود . در ضمن استفاده از نقطه (.) و علامت هايي چون @ و $ و % در نام متغيير جايز نيست . پس متغيير هايي چون 12fm و se.r و rt@r براي زبان JS بي معني هستند .

_ براي نام يك متغيير نمي توان از كلمات رزرو شده JS مانند this ، comment ، case و بسياري ديگر استفاده كرد . تعداد كلمات رزرو شده در JS زياد است و من به مرور زمان به همه آنها اشاره خواهم كرد .

_ وقتي ما متغييري مانند "mark="world wide web را تعريف مي كنيم در واقع مقدار world wide web را به متغيير mark نسبت مي دهيم و تصور اينكه بر اساس اين دستور world wide web با mark برابر است ، تصوري كاملا نادرست است .

براي هر كسي كه اندكي اطلاعات پيش زمينه برنامه نويسي دارد واضح است كه هر زباني كه عملگرهاي رياضي چون جمع ، تفريق و غيره را نداشته باشد ، يك زبان ناقص بوده و فاقد يكي از اساسي ترين خصوصيات يك زبان برنامه نويسي است . زبان JS داراي يكي از كاملترين علائم و دستورات رياضي است كه از نقاط قوت اين زبان به شمار مي رود . توجه داشته باشيد كه ما مي توانيم توسط اين عملگر ها بين دو يا چند متغيير يك يا چند عمل رياضي را انجام داده و حاصل را به يك متغيير ديگر نسبت دهيم . ساده ترين عملگر اين زبان ، عملگر جمع است كه داراي نكات مهمي است . فرض كنيم دو متغيير به نام هاي m1=5 و m2=7 داشته باشيم كه هر دو متغيير عددي باشند . در اين صورت مي توانيم اندو را با استفاده از دستور زير با هم چمع كرده و داخل متغيير d قرار دهيم :

d=m1+m2

در اين حالت متغيير d داراي مقدار عددي 12 خواهد بود . نكته قابل توجه اين است كه از جمع دو متغيير عددي ، متغييري عددي به وجود مي آيد .

حال فرض كنيد دو متغيير m1 و m2 ي ما داراي مقدار رشته اي day و night باشند . در اين صورت در مورد حاصل جمع آنها داريم :

d=m1+m2

در حالت جمع دو مقدار رشته اي ، مقدار حاصل برابر است با مقادير دو متغيير در كنار هم ، يعني مقدار dبرابر خواهد بود با daynight ، و همانطور كه مشاهده مي كنيد هيچ فاصله اي بين دو مقدار نخواهد بود. حتما به اين نكته بسيار مهم توجه داشته باشيد كه هيچگاه m1+m2 با m2+m1 برابر نيست زيرا هميشه در جمع رشته اي مقدار متغيير دوم بعد از مقدار متغيير اول قرار خواهد گرفت يعني

r=m1+m2 پس : r=daynight
t=m2+m1 پس : t=nightday

ممكن است شما بخواهيد يك متغيير عددي را با يك متغيير رشته اي جمع كنيد . در اين صورت يك مقدار رشته اي از جمع دو متغيير بدست خواهد آمد . مثال زير مطلب آشكار تري در اختيار شما قرار مي دهد .

P="javascript"
t=239
f1=p+t پس : f1="javascript239"
f2=t+p پس : f2="239javascript"

نكته قابل توجه ديگر اين است كه در جمع دو متغيير منطقي ، مقدار TRUE برابر با 1 (يك) و مقدار FALSE برابر با 0 (صفر) محسوب خواهد شد .در واقع False را مي توان داراي مقدار پوچ و True را مي توان داراي مقدار كامل يعني 1 در نظر گرفت . اگر هر دو متغيير True باشند حاصل جمع انها برابر 2 خواهد بود ، در صورت FALSE بودن هر دو حاصل برابر صفر و در صورتي كه يكي True و ديگري False باشد حاصل برابر 1 خواهد بود . چون در اين كلاس كاملترين مطالب و كوچكترين نكات در مورد مباحث مختلف JS ارائه مي شود ، اتمام هر مبحث در يك جلسه امكان پذير نيست پس ادامه بحث در مورد عملگر ها را به بخش بعد موكول مي كنيم ...

+ نوشته شده در ساعت توسط حمیدرضا شفیعی |

Home
Email
Night Skin