10

CoffeeScript و TypeScript ، هل اصبحت الجافا سكريبت Assembly الويب ؟ مارأيكم ؟

في السنوات الاخيرة ظهرت لغات برمجة مثل CoffeeScript و TypeScript وغيره من اللغات التي يتم ترجمتها إلي Javascript لتعمل مع كافة المتصفحات .

والبساطه في هذه اللغات الجديدة هي التي تجعلها الاختيار الامثل لكتابة سكربتات تعمل علي ال Client-Side.

فمثل هذا الكود المكتوب باللغة TypeScript :-

module Sayings {
    export class Greeter {
        greeting: string;
        constructor(message: string) {
            this.greeting = message;
        }
        greet() {
            return "Hello, " + this.greeting;
        }
    }
}
var greeter = new Sayings.Greeter("world");

var button = document.createElement('button');
button.textContent = "Say Hello";
button.onclick = function() {
    alert(greeter.greet());
};

document.body.appendChild(button);

يتم ترجمته الي كود جافاسكريبت ليصبح هكذا :-

var Sayings;
(function (Sayings) {
    var Greeter = (function () {
        function Greeter(message) {
            this.greeting = message;
        }
        Greeter.prototype.greet = function () {
            return "Hello, " + this.greeting;
        };
        return Greeter;
    })();
    Sayings.Greeter = Greeter;
})(Sayings || (Sayings = {}));
var greeter = new Sayings.Greeter("world");

var button = document.createElement('button');
button.textContent = "Say Hello";
button.onclick = function () {
    alert(greeter.greet());
};

document.body.appendChild(button);

فما هو رأيكم في مثل هذه اللغات الجديدة ؟ هل ستكون وسيلة جيده لكتابة تطبيقات تعمل علي ال Client-Side ام ان ال Javascript هي الخيار الامثل ؟


هناك عدة آراء بين مطوري الوب حول الموضوع، بين من يميل إلى بناء طبقة تجريد فوق جافاسكربت (وهذا ما يحدث حاليا)، وبين من يفضل أن يتم تطوير جافاسكربت نفسها. والأمر فيه الكثير من النقاشات والتفاصيل فيمكنك أن تبحث فقط عن Javascript vs CoffeeScript على سبيل المثال لتتبين وجهات النظر تلك.