Jakie korzyści może przynieść ScriptSharp mojemu zestawowi narzędzi?
Obecnie używamy jQuery, aby dodać RIA do naszych aplikacji, ale ostatnio wdrażaliśmy wyszukiwarkę Coveo do naszego portalu Sharepoint i okazało się, że w ich produkcie zastosowano ScriptSharp. Co może przynieść ScriptSharp do stołu?
5 answers
Używam ScriptSharp jak mówimy, po odkryciu go około 2-3 tygodnie temu. Szczerze, uwielbiam to. Natywny Javascript jest wyzwaniem, a model DOM sprawia, że programowanie po stronie klienta jest jeszcze gorsze. Potem odkryłem jQuery jakieś pół roku temu, i myślałem, że to dar niebios. jQuery zwiększył moją produktywność, ale nadal często grzęźnę w jQuery, ponieważ nadal musisz pisać, debugować i poprawiać Javascript.
Wpisz ScriptSharp. To zwiększyło moją produktywność ponad jQuery i zmniejszył moje bóle głowy ogromnie. Największe zalety, jakie widzę, to fakt, że moc C# i Visual Studio jest twoja podczas pisania kodu.Siła tego nie może być zaniżona. Teraz drobne błędy Javascript, które zajmowały wiele godzin, aby debugować, zostały wyeliminowane w czasie kompilacji. linie kodu są prawdopodobnie około dwa razy więcej niż w jQuery, ale wydajność jest o wiele wyższa, więc kogo to obchodzi? W zasadzie tylko piszesz Kod, o wiele mniej cykli kompilacji / testowania/debugowania. Godziny stają się minutami.
Powiem, że początkowo trudno było uzyskać ScriptSharp do pracy z Microsoft AJAX, dopóki nie dowiedziałem się o bardzo ważnym kroku , który musisz podjąć, aby z nim pracować. Wyrywałam włosy na kilka dni, zanim się o tym dowiedziałam. (Wierzę, że jest to udokumentowane w Scriptsharp ' S 61-stronicowy PDF Readme, ale to jest bardzo łatwo to połysk.) Kluczem jest wybranie typu projektu " Script# Class Library inside a Web Site "(lub" MS Ajax Class Library Inside a Web Site") podczas tworzenia biblioteki ScriptSharp. Umieszcza projekt ScriptSharp w katalogu Bin / Scripts strony, a -- bardzo ważne -- kieruje skompilowane wyjście do tego katalogu zamiast do domyślnego katalogu " bin " projektu ScriptSharp. Być może przykład będzie pouczający:
Web Site or Application directory\
Bin\
Scripts\ <-- "..\\" config setting sends .js files here.
ScriptSharp Project directory\
Bin\ <-- will not be used at run time
Debug\ <-- will not be used at run time
Krótko mówiąc, uznałem ten projekt za wartościowy. Napiszę własne HOW-TO (co w moim przypadku wiąże się z użyciem kontrolek użytkownika sieci), jak powiązać wszystko ze sobą i opublikować adres URL tutaj. Teraz, gdy już rozgryzłem ScriptSharp, uczyniło mnie to bardzo produktywnym w rozwoju RIA. Gdyby tylko było bardziej widoczne i gdyby tylko strona CodePlex nadal tam była.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-25 15:58:50
W mojej ostatniej firmie używałem Script# bardzo intensywnie. Udało mi się napisać kilka fajnych kontrolek (w rzeczywistości cały stos MVC po stronie klienta), których nie mogłem zrobić z moją znajomością javascript. Jednak nie użyłbym go ponownie z kilku powodów
- projekt jest zamknięty, a wsparcie nie jest wielkie (praktycznie nie istnieje od czasu zamknięcia forum). Istnieje sporo irytacji, gdy używasz go w dużej głębokości, które można naprawić, jeśli masz źródło. To staje się coraz większym problemem im więcej zainwestowałeś w s # code. Jest on ograniczony do podzbioru. NET 2.0, a nawet wtedy jego nieszczelna abstrakcja
- Ostatnio JavaScript unit testing I vs intellisense dla javascript ma się znacznie lepiej, więc znaczenie typowania statycznego jest nieco zmniejszone
- używanie go ograniczyło moją naukę jquery i javascript
Narzędzia do js są coraz lepsze i dopóki Script# nie będzie open source, to na / align = "left" /
Jeśli jesteś zainteresowany kompilacją krzyżową, możesz również rzucić okiem na http://jsc.sourceforge.net / projekt, który pozwala korzystać z. Net 3.5 i kompilować do JS, Java, Flash, a nawet PHP! Nie wiem jednak, jak wydajny jest kod, który jest wytwarzany...
Edit: istnieje nowy projekt o nazwie JSIL, który również przepisuje kod. NET do JS
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-07-12 17:02:38
Projekt kompilatora jsc umożliwia takie scenariusze:
- C# to MSIL to JavaScript for browser
- C# to MSIL to JavaScript for AppJet
- C# do MSIL do PHP5 dla rozwiązań hostingowych
- C# to MSIL to Java for browser aplets
- C# to MSIL to Java for applications
- C# to MSIL to Java for JavaCard
- C# do MSIL do C99 dla natywnych aplikacji stub
- C# do MSIL do ActionScript3 dla Flasha 9
- C # to MSIL to Adobe Alchemy C for Flash 9
- C# do MSIL do C # 2.0
Z pewnym wysiłkiem Visual Basic może być również używany jako język źródłowy. Kompilator jsc nigdy nie odczytuje kodu źródłowego, nawet jeśli GWT i Script# to robią. Mój kompilator czyta Twoje IL.
Kompilator Jsc to
- eksperymentalny projekt
- one mans trud yet Już całkiem przydatne. 3 lata.
- oczekiwanie na wsparcie w celu optymalizacji czasu kompilacji i samego wyjścia
Najnowsze przykładem jest animacja plazmowa, w której pojedynczy implementacja może być używana pomiędzy tymi platformami:
- Flash 10
- aplet Javy (poprzez element canvas)
- JavaScript
- Windows Forms
- Windows Presentation Foundation
FlashPlasma http://jsc.sourceforge.net/examples/web/FlashPlasma/assets/FlashPlasma/Preview.png
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-26 08:27:13
Skrypt sharp Prototype: GWT Microsoftu
Zgodnie z tą stroną:
- czysty język z naturalnymi konstrukcjami.
- łatwiejsze refaktoryzacja i eksploracja.
- możliwość generowania dokumentacji.
- możliwość łatwego dostosowania kodu skryptu.
Nie jestem pewien, czy się z tym wszystkim Zgadzam, ale to i tak podstawa sprzedaży. Wygląda na to, że jest napisany z kilkoma funkcjami OO. Opinia dodana: jak już wspominałem, Java a programiści C# pozornie chcą wyrzucić prototypowe / nieopisane aspekty Javascript, ponieważ są niewygodni z pisaniem kodu w ten sposób. Nietypowe języki prototypowania mają swoje miejsce.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-25 13:38:12
Chciałbym udostępnić moje klasy wrappera jQuery dla skryptu#. Możesz uzyskać dostęp i korzystać z zaawansowanych funkcji jQuery w swoim Script# project, już teraz.
Get it from here: http://www.springsys.com/blog/
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-22 09:40:18