Ajax

سلام،
توی اتوبوس نشسته بودم، غرق در افکار کامپیوتری، غیر کامپیوتری و خیلی غیر کامپیوتری بود و به مسائل مختلف فکر می‌کردم و در همین حین آسمون رو نگاه می‌کردم، دم غروب بود و آسمون زیبا بود.
که ناگهان یکی از افکار کامپیوتریم به نتیجه رسید. یکی دو روز پیش داشتم دنبال یه کاربرد برای Ajax برای خودم می‌گشتم که یکدفعه در اتوبوس براش یه مورد استفاده پیدا کردم و شما بعداً نتیجه‌اش را خواهید دید.
بعد از اینکه در مورد Ajax به نتیجه مطلوب رسیدم، راننده داشت بلیط‌ها رو جمع می‌کرد، ناگهان موبایل یکی زنگ زد بعد از یه وقفه‌ی کوچک راننده گفت افغانی هم همراه داره! و من نگاه کردم دیدم بله افغانی موبایل داره. یعنی یک فردی که ملیتش افغانستانی است هم می‌تواند تلفن همراه داشته باشه و این اصلاً عجیب نیست و اشکالی نداره و خوب هم هست. و البته داشتن موبایل به ملیت و قومیت و نژاد و جنسیت و .... ربطی نداره.
نفهمیدم برای راننده چرا اینقدر موبایل داشتن یک فرد محترم افغانی عجیب بود. راستی طبق آمار رسمی تو ایران هر صد نفر یک نفر افغانیه.
موفق باشید.

Microsoft Office 11

سلام،
استفاده از آفیس در دات نت و برعکس خیلی آسون و البته به درد بخور.
بیشتر از excel توی وی‌بی دات نت استفاده کردم و بسی لذت بردم.
بعد از اضافه کردن excel به عنوان Reference به همین سادگی میشه ازش استفاده کرد:
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
xlApp = New Excel.Application
xlBook = xlApp.Workbooks.Add
xlSheet = xlBook.Worksheets(1)
xlSheet.Application.Visible = True
xlSheet.Cells(1, 1) = "Test"
xlSheet.Cells(2, 1) = 123
موفق باشید.

پیشرفت

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

صاعقه

سلام،
دیشب آسمون تهران پر از صاعقه بود که به این ور و اون ور می‌خوردن. من وقتی دیدم که تعداد صاعقه‌ها خیلی زیاده تصمیم گرفتم که ازشون عکس بگیرم.
زمانی زیادی رو پشت پنجره بودم، با سرعت شاتر بین 5 تا 8 ثانیه بیشتر از 40 تا عکس گرفتم ولی فقط موفق شدم از یک صاعقه عکس بگیرم. آسمون با من لج کرده بود، اصلاً اونجای که من عکس می‌گرفت رعد و برق اتفاق نمی‌افتاد، دوربین رو به هر طرف می‌گرفتم اون طرف می‌شد آروم ترین جای آسمون!. فقط تونستم یک عکس بگیرم که اونم متاسفانه نصف بالای صاعقه نیافتاد.
اتفاق دیشب باعث شد تصمیم بگیرم که اگر احیاناً هفته دیگه که تعطیله رفتم شمال لب دریا محض احتیاط یه سطل آب با خودم ببرم شاید او تیکه از ساحل با رفتن من خشک بشه.
موفق باشید و صاعقه بتون نخوره.

Zero Width

سلام،
خدا پدر سازندگان یونیکد را بیامرزد.
در رابطه با فاصله‌ی بین کلمات در تایپ فارسی مشکلاتی رو خیلی جاها می‌بینم که چاره‌ی آسانی داره.
در نوشتن فارسی بعضی وقت‌ها لازمه بین دوتا کلمه فاصله نباشه مثل همین وقت‌ها که نباید بین وقت و ها فاصله باشه، اگر فاصله‌ای اون وسط باشه خیلی زشت میشه: وقت ها.
اگر فاصله اون وسط نگذارید خوب به هم می‌چسبن و میشه وقتها، ولی شاید لازم باشه که به هم نچسبند.
یونیکد دو کارکتر به نام‌های Zero Width Non-Joiner و Zero Width Joiner دارد، این کارکترها همانطور که از نامشان پیداست طول صفر دارند و فضایی را اشغال نمی‌کنند و دیده نمی‌شوند.
Zero Width Non-Joiner وقتی بین دو کارکتر قرار بگیرد از چسبیدن آنها به هم جلوگیری می‌کند: ش‌ش ط‌ط.
Zero Width Joiner که کارش چسبیدنه، باعث می‌شود که کارکتر قبل از آن به این حالت در بیاید: ش‍ یا ص‍. و اگر قبل از کارکتری بیاید آن را به این شکل در می‌آورد: ‍ع. و اگر دو طرف یک کارکتر بیاید آن کارکتر از دو طرف حالت چسبیده پیدا می‌کند.
این کارکترها بر خلاف کارکترهای معمولی هر کدام 3 بایت جا می‌گیرند. Non-Joiner E2 80 8C و Joiner E2 80 8D است.
در بعضی از برنامه‌ها برای اضافه کردن Non-Joiner می‌توان کلید Shift را نگه داشت و Space را فشار داد.
راه دیگر Shift+Ctrl+2 برای Zero Width Non-Joiner و Shift+Ctrl+1 برای Zero Width Joiner است. دقت کنید که عددها را باید با کلیدهای کیبورد زد و نه کیپد.
موفق باشید.

درخت

سلام،
فواید درخت و درختکاری بر همگان واضح و مبرهن است و نیاز به اشاره به آن نیست..، درخت در کامپیوتر و ساختمان داده‌ها هم خیلی مفید و به درد بخور است.
من نمی‌خوام درباره‌ی ساختمان داده‌ی درخت توضیح بدم، فقط مثالی که میزنم راجع به درخت جستجوی دودویی است.
اصل مطلب اینه که؛ خیلی‌ها فکر می‌کنن چون دات نت چیزی دقیقاً مثل اشاره‌گرها در C++‎ نداره پس خیلی از چیزهایی رو که با استفاده از اشاره‌گر پیاده می‌کردن، دیگه نمی‌تونن با دات نت درست کنن. مثلاً در رابطه با لیست پیوندی و هر چیزی که با اون درست بشه این جور فکر می‌کنن.
غافل از اینکه دات نت یه چیزی داره که پدر اشاره‌گره! و اون چیزی نیست جز Reference.
این مثال، درخت جستجوی دودویی است که چند دقیقه‌ی پیش نوشتم.
کلاس BSTree یه درخت جستجوی دودویی نُقلیه. با تابع Insert می‌توان به آن عنصری را اضافه کرد و با تابع Search می‌توان وجود عنصری را در درخت بررسی کرد و تهایتاً با تابع Remove می‌توان عنصری را حذف کرد. توجه کنید که این درخت خیلی نقلی است و می‌تونه خیلی کامل‌تر باشه.
یک کلاس هم به نام TreeNode در داخل BSTree است که گره درخت است.

موفق باشید.

امتحان پَر

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

بدون موضوع

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