Kaxaml یک ویرایشگر خوب برای فایل های xaml

24 07 2009

اگر با WPF یا سیلورلایت آشنایی داشته باشید حتماً می دانید فایل های xaml به چه دردی میخورند! Xaml یک زبان بر مبنای XML است که برای طراحی رابط کاربری اپلیکیشن های WPF و Silverlight مورد استفاده قرار می گیرد. با استفاده از این زبان، می توانید رابط های کاربری بسیار زیبایی خلق کنید.

kaxaml

برنامه نویسانی که از WPF در پروژه هایشان استفاده می کنند حتماً از قابلیت های ویرایشگر های ویژوال استادیو و Expression Blend برای ویرایش فایل های Xaml باخبرند. نرم افزارهای فوق امکانات خوبی برای این کار در اختیار شما قرار می دهند. اما یک برنامه نویس همیشه به جز یک محیط توسعه خوب، یک ابزار سبک هم برای ویرایش فایل های برنامه اش کنار می گذارد. به طور مثال من از ویژوال استادیو استفاده میکنم اما برای ویرایش فقط یک فایل سورس سی شارپ هیچ وقت ویژوال استادیو رو باز نمی کنم، بلکه با Notepad++ کارم را انجام می دهم.

kaxaml-shot
برای ویرایش فایل های xaml نیز می توان از ابزارهای سبک تر از ویژوال استادیو و Expression Blend استفاده کرد. Kaxaml یک ویرایشگر بسیار مناسب و سبک برای این منظور است. Kaxaml هم رایگان است و هم اوپن سورس و هم خودش بر مبنای WPF و دات نت فریم ورک 3.0 توسعه یافته است. این برنامه امکانات خوبی همچون پیشنهاد عبارات مرتبط شبیه به Intellisense دارد. چندین فایل xaml را می توانید در تب های جداگانه ویرایش کنید. در حین تایپ کدهایتان می توانید پیش نمایش زنده ای از طرح تان ببینید.
یکی از ویژگی های خوب این برنامه، ویژگی Snippets است که شامل کدهای نمونه xaml است که با آن ها می توانید به یادگیری زبان xaml بپردازید. حتی می توانید قطعه کدهای خود را نیز به Snippets اضافه کنید. ویژگی مناسب دیگر آن، قابلیت ذخیره کردن طرح شما در قالب PNG است.

Kaxaml توسط یکی از اعضای اصلی تیم توسعه WPF مایکروسافت نوشته شده و سورس کد آن در سایت CodePlex در دسترس است.

Kaxaml در نسخه جدید و بتای خود از سیلورلایت 2 پشتیبانی می کند. نسخه بتا را از اینجا و نسخه 1.0 (قدیمی تر) را اینجا دریافت کنید. نسخه بدون نیاز به نصب را نیز از اینجا دریافت کنید.

farasun.wordpress.com

می خواهید مطالب این وبلاگ را دنبال کنید! مشترک فید فراسان شوید! نمی دانید فید چیست!؟

مطالب مرتبط :





به اشتراک گذاری قطعات کد در شبکه های اجتماعی

21 07 2009

استفاده از خدمات شبکه‌های اجتماعی، روزبه‌روز محبوبیت بیشتری بین کاربران اینترنت پیدا می‌کند. شبکه های اجتماعی مثل فیس بوک و توییتر در حال تبدیل شدن به جزئی از زندگی ما کاربران اینترنت شده است. این حرف اشتباه نسیت اگر بگوییم بعد از جستجو و ایمیل، شبکه های اجتماعی از پر استفاده ترین خدمات اینترنتی هستند! اگر احساس می کنید هنوز شبکه های اجتماعی هیچ تاثیری روی زندگی شما نگذاشته اند، باید بدانید که در آینده این شبکه های اجتماعی بیش از حالا اهمیت پیدا خواهند کرد. فیس بوک یکی از بزرگترین و محبوب ترین شبکه های اجتماعی بیش از 200 میلیون کاربر در سرار دنیا دارد.

خب در این مطلب نمی خواهیم در مورد بدیهیات شبکه های اجتماعی بحث کنیم. به اشتراک گذاری اطلاعات یکی از ارکان اصلی شبکه های اجتماعی و البته وب 2.0 است. در شبکه های اجتماعی معروف مثل فیس بوک و توییتر تقریباً می توان همه محتوایی را به اشتراک گذاشت، از متن ساده گرفته تا عکس و ویدئو. ما برنامه نویسان یک مشکل کوچک با این شبکه های اجتماعی داریم، مخصوصاً با توییتر، اینکه چطور قطعه کدهایمان را به اشتراک بگذاریم! به طور مثال چطور چندخط کد را بوسیله توییتر با دوستانم به اشتراک بگذارم!؟ اگر بخواهم همین قطعه کد را به دوستی که در حال چت کردن در یک مسنجر هستیم نشان دهم چه کنم!؟

code-paste

راه حل این موضوع وب سایت CodePaste.Net است که به شما اجازه می دهد بدون نیاز به ثبت نام، به راحتی کد خود را به زبان های xC#, VB.NET, JavaScript, HTML, ASP.NET, JavaScript, XML, CSS, Sql, T-SQL, و FoxPro بنویسید و لینک آن را برای دوستانتان در شبکه های اجتماعی یا مسنجرها بفرستید. وقتی دوستانتان لینک مورد نظر را باز می کنند، قطعه کد شما را به صورت تمیز و با قابلیت شماره گذازی و Syntax Highlighting و توضیحات تکمیلی شما مشاهده خواهند کرد. به نظرتان این عالی نیست!

به طور مثال من میخواستم نحوه استفاده از PropertyGrid در سی شارپ را به یکی از دوستانم که در حال چت کردن بودیم یاد بدهم. اگر کدها را همینطور در مسنجر تایپ میکردم، هم ظاهر خوبی نداشت و هم دوستم سر در گم میشد. خیلی راحت کدم را در CodePaste.net نوشتم و به آن لینک دادم!

API این سرویس، اجازه دسترسی به قطعات کد را در سه فرمت XML, JSON و RSS به شما می دهد. به طور مثال با اضافه کردن x?format=xml به انتهای URL یک قطعه کد، می توانید اطلاعاتش را با فرمت XML دریافت کنید.

این پروژه بوسیله فریم ورک ASP.NET MVC نوشته شده و کد آن برای بررسی در اینجا قابل دسترسی است.

هرچند ایده این پروژه جدید نیست، و قبل از آن سایت Pastie با پشتیبانی از زبان های PHP, Perl. Python, Ruby و چندتای دیگر همین کار را برای برنامه نویسان و طراحان وب انجام میداد، اما CodePaste.net به طور مخصوص برای برنامه نویسان دات نت طراحی شده و زبان های دات نتی را که Pastie پشتیبانی نمی کند، پشتیبانی می کند. قابلیت برچسب گذاری و قرار دادن توضیحات که در CodePaste.net وجود دارد، در Pastie وجود ندارد.

بعضی مواقع هم می توانید با استفاده از CodePaste.net با دوستانتان شوخی کنید! +

CodePaste.Net

توضیحات Rick Strahl، نویسنده این پروژه

مشترک فید فراسان شوید! نمی دانید فید چیست!؟

farasun.wordpress.com

پ.ن 1 : نسخه جدید Granslator (کلاینت اوپن سورس برای سرویس مترجم گوگل) رو آماده کردم، تغییرات خوبی داشته، از اینجا دانلود کنید.

پ.ن 2 : عکس پرسنل پرواز هواپیمای توپولوفی که تازگی سقوط کرده. امیدوارم دیگه شاهد این اتفاقات تلخ نباشیم! + هر چند هیچ امیدی نیست!

پ.ن 3 : نگاهی به وبلاگ شخصیم هم بندازید!





آیا برنامه دات نت شما روی لینوکس اجرا می شود!؟

19 07 2009

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

mono-logoچندسال پیش زمزمه های پروژه ای به گوش رسید که مژده اجرای نرم افزارهای مبتنی بر دات نت را بر روی سیستم عامل های دیگر میداد. پروژه مونو یک فریم ورک دات نت cross-platform و اوپن سورس است که به شما اجازه می دهد که برنامه های مبتنی بر دات نت خود را که تا به حال فقط روی ویندوز اجرا می شده را روی سیستم عامل های مبتنی بر لینوکس و حتی سیستم عامل شرکت اپل اجرا کنید. آخرین نسخه پایدار مونو از C# 3.0، VB 8، ASP.NET 2.0, ADO.NET و Windows Forms 2.0 پشتیبانی می کند. در واقع اگر برنامه خودتان را با دات نت فریم ورک نسخه 2.0 نوشته باشید و از APIهای ویندوز نیز استفاده نکرده باشید، به راحتی می توانید آن را روی لینوکس یا مک اجرا کنید. برای دریافت آخرین نسخه مونو برای پلت فرم های مختلف به این صفحه از سایت رسمی مونو مراجعه کنید.

خب فکر میکنم جواب تیتر سئوالی این مطلب مشخص شده باشد. در وب سایت مونو، برنامه سودمند کوچکی معرفی شده که با اسکن کردن اسمبلی های پروژه تحت دات نت شما، گزارشی تولید می کند که مشخص کننده قسمت هایی از کدهای پروژه شماست که با فریم ورک مونو سازگاری ندارند. با استفاده از این گزارش به راحتی می توانید قسمت های ناسازگار را اصلاح کنید و خروجی پروژه را برای اجرا روی مونو آماده کنید. نام این برنامه سودمند Mono Migration Analyzer یا MoMA است و از اینجا قابل دریافت است.

moma

برای توسعه برنامه های مبتنی بر مونو یک محیط توسعه مجتمع به نام MonoDevelop هم تولید شده که هرچند در حد ویژوال استادیو نیست اما نصافاً محیط خوبی برای توسعه برنامه های مبتنی بر مونوست. MonoDevelop بر اساس IDE موفق و اوپن سورس SharpDevelop توسعه یافته است.





کلاینت اوپن سورس برای Google Translate

14 07 2009

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

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

مترجم گوگل برای برنامه نویسان

513171250_d2a4194703

گوگل با انتشار API سرویس مترجم خود، برای برنامه نویسان این امکان را فراهم کرده است که با کد نویسی بتوانند از این سرویس در برنامه های خودشان استفاده کنند. مثلاً برای جاوا می توانید از اینجا یک کتابخانه برای کار با این سرویس دریافت کنید. برای زبان ها و پلت فرم های مختلف، توسعه های غیر رسمی زیادی وجود دارد. به طور مثال API این سرویس برای پلت فرم دات نت به صورت غیر رسمی در اینجا قابل دسترسی است. با استفاده از آن می توانید از قدرت مترجم گوگل در برنامه ها و وب سایت های مبتنی بر دات نت استفاده کنید. استفاده از آن بسیار آسان است، برای ترجمه یک متن کافیست فقط یک تابع را صدا بزنید و پارامترهای لازم را به آن پاس دهید. خروجی این تابع، خروجی مترجم گوگل خواهد بود. با استفاده از آن می توانید در وب سایت های مبتنی بر ASP.NET به راحتی قابلیت چند زبانگی را اضافه کنید.

من ابتدا فقط قصد نوشتن یک مثال با این API را داشتم که در این مطلب قرار بدهم، اما متاسفانه کسی که API این سرویس را برای دات نت توسعه داده، زبان فارسی را جزو زبان های مورد پشتیبانی این کتابخانه قرار نداده بود. من با یک تغییر کوچک در این کتابخانه، زبان فارسی را هم اضافه کردم. مثالی که برای این کتابخانه نوشتم بر اساس نیاز خودم گسترش پیدا کرد تا حالا که فکر میکنم بتواند نیاز خیلی ها را برطرف کند. خلاصه نتیجه این کلنجار رفتن ها برنامه کوچکی شد برای کار با سرویس Google Translate که به صورت اوپن سورس در اینجا قرارش داده ام.

شما هم می توانید به راحتی با استفاده از کتابخانه فوق یک کلاینت برای مترجم گوگل بنویسید. من کار خاصی انجام ندادم، کد نویسی این کلاینت به لطف کتابخانه مذکور بسیار آسان انجام شده است. شما اگر می خواهید کلاینتی برای مترجم گوگل بنویسید، پیشنهاد میکنم همین کلاینت را تغییر دهید.

مترجم گوگل برای کاربران ویندوز

granslator

برای استفاده از مترجم گوگل راهی جز رفتن به وب سایتش نیز وجود دارد. Granslator نام برنامه کم حجم و قابل حملی است که می توانید با استفاده از آن متون خود را از هر زبانی به هر زبانی که توسط سرویس ترجمه گوگل پشتیبانی می شوند، ترجمه کنید. با استفاده از این برنامه می توانید بدون مراجعه به سایت سرویس ترجمه گوگل، متون خود را ترجمه کنید. استفاده از آن بسیار آسان است، هر جای ویندوز که هستید می توانید با فشردن کلیدهای ترکیبی Ctrl+Shift+G این برنامه را صدا بزنید و متن خود را به عنوان ورودی به آن بدهید و پس از چند لحظه ترجمه اش را تحویل بگیرید. متن ترجمه شده را می توانید با یک کلیک به حافظه کلیپ برد کپی کنید یا در یک فایل متنی ذخیره کنید. اگر زبان یک کلمه یا یک پاراگراف برای شما قابل تشخیص نیست، کافیست آن را به این برنامه بدهید و تا با کلیک کردن روی گزینه “Detect Source Language” توسط شما، برنامه زبان متن را به صورت خودکار تشخیص دهد و آن را به زبان مطلوب شما ترجمه کند. تصویری از محیط برنامه را در زیر مشاهده می کنید.

granslator-screenshot

برای دریافت آن به اینجا (دریافت آخرین نسخه) مراجعه کنید و روی گزینه  )granslator-0-1-beta-portable (در نسخه جدید granslator-setup) کلیک کنید تا دانلود شما شروع شود. حجم آن بسیار کم و فقط 320 کیلوبایت است. فقط توجه داشته باشید که این نسخه از Granslator آزمایشی است و در نسخه بتا به سر می برد و هیچ نیازی هم به نصب ندارد. فقط کافیست برنامه را از حالت فشرده خارج کنید و آن را اجرا کنید. نظر یا پیشنهادی داشتید در قسمت نظرات همین مطلب با من در میان بگذارید.

این نرم افزار کاملاً رایگان و کدباز است و شما مجاز به کپی و تغییر کد منبع آن بر اساس مندرجات مجوزنامه GPL نسخه 2.0 خواهید بود.

نکته مهم : وقتی برنامه را Minimize می کنید، برنامه بسته نمی شود، فقط در System Tray (آیکون های کنار ساعت ویندوز شما) قرار می گیرد که با دابل کلیک روی آن می توانید دوباره پنجره برنامه را مشاهده کنید.

sys-tray

همانطور که در تصویر بالا مشاهده می کنید، آیکون Granslator به شکل G در میان آیکون های System Tray قرار می گیرد.

نکته مهم دیگر در استفاده این برنامه این است که برای ترجمه یک متن حتماً باید به اینترنت وصل باشید!

پیش نیاز این برنامه نصب بودن x.NET framework 2.0 به بالا در ویندوز شماست.

دریافت Granslator

مشترک فید فراسان شوید! نمی دانید فید چیست!؟

پ.ن 1: این برنامه بر اساس نیاز خودم نوشته شده، اگر امکان دیگری لازم دارید در نظرات همین مطلب ذکر کنید.

پ.ن 2: اگر تغییری در برنامه ایجاد کردید، حتماً به من خبر بدین تا در وب سایت اصلیش قرار بدم. با توجه به اینکه مجوز استفاده و نشر این برنامه GPL نسخه 2 هست، شما بایستی نسخه های تغییر داده خودتان را هم به صورت آزاد تحت این مجوز یا مجوزهای سازگار با آن منتشر کنید.

پ.ن 3: نام برنامه ابتدا قرار بود G Translate باشه، اما گنوم یک برنامه ای به همین نام داره و قبلاً در کدپلکس پروژه ای به همین نام و با همین ایده ثبت شده بود. این نام هم یکدفعه به ذهنم خطور کرد.