Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM    Subskrybuj kanał ATOM dla tagu javascript Kanał ATOM (tag: javascript)

Autor wpisu: Tomasz Kowalczyk, dodany: 20.05.2011 20:06, tagi: javascript

Wtorkowy wpis był poświęcony integracji biblioteki CKEditor z polami formularzy wygenerowanymi poprzez konsolowe polecenia biblioteki "admin generator" frameworka symfony. W ogólnej pracy jest on bardzo przyjemny - nawet pisanie rozszerzeń nie sprawia większych kłopotów ze względu na dobrze zdefiniowany interfejs wtyczek i ogólny porządek w kodzie. Nie znaczy to jednak, że nie ma problemów wcale, [...]

Autor wpisu: Tomasz Kowalczyk, dodany: 17.05.2011 23:24, tagi: symfony, javascript, php

Framework symfony to bezsprzecznie jeden z najlepszych frameworków, jakie miałem okazję testować. Zarówno poziom zaawansowania kodu, jak też łatwość tworzenia nowych funkcjonalności w stronach internetowych czynią go naprawdę genialnym narzędziem w rękach programisty. W dzisiejszym wpisie chciałbym pokazać, jak w prosty sposób zintegrować edytor WYSIWYG - CKEditor z polami <textarea> w poszczególnych modułach panelu administracyjnego [...]

Autor wpisu: singles, dodany: 14.05.2011 23:52, tagi: javascript

O języku JavaScript można mówić dobrze jak i źle, ale na pewno nie można odmówić mu rozkwitu w ostatnich latach. I nie mam na myśli tego, że webmasterzy ponownie zaczęli implementować zegarki latające za kursorem (ah te początki 2000 roku ;) JavaScript na serwerze staje się coraz bardziej naturalny za sprawą narzędzi typu node.js, silniki JS są coraz szybsze, powstaje coraz więcej aplikacji pisanych tylko i wyłącznie w tym języku.

Jednak im więcej kodu piszemy, tym częściej zauważamy, że niektóre konstrukcje językowe powtarzają się coraz częściej. Wydaje mi się, że głównie chęć zaoszczędzenia czasu jest motorem do powstania takich narzędzi jak CoffeeScript, które to chciałbym w tym wpisie krótko przedstawić.

„Ale o so chodzi?”

Jak piszą autorzy, CoffeeScript jest małym językiem, który kompiluje się do JavaScript’u. Przykładowy kod wygląda tak (zaczerpnięty z głównej strony projektu):

# Assignment:
number   = 42
opposite = true
 
# Conditions:
number = -42 if opposite
 
# Functions:
square = (x) -> x * x
 
# Objects:
math =
  root:   Math.sqrt
  square: square
  cube:   (x) -> x * square x
 
# Splats:
race = (winner, runners...) ->
  print winner, runners
 
# Existence:
alert "I knew it!" if elvis?

Najpierw piszemy kod za pomocą składni CoffeeScript, a następnie kompilujemy do najzwyklejszego JavaScriptu, który to automatycznie przechodzi testy JavaScript Lint. Możliwości narzędzia najlepiej będzie przedstawić na kilku przykładach:

Instrukcje warunkowe

Programistom Ruby poniższa składania powinna wydawać się jak najbardziej naturalna. Mianowicie kod:

number = 42
opposite = true
number = -42 if opposite

da nam wynikowo:

var number, opposite;
number = 42;
opposite = true;
if (opposite) {
  number = -42;
}

Szybka definicja funkcji

square = (x) -> x * x
cube   = (x) -> square(x) * x

zamienia się w:

var cube, square;
square = function(x) {
  return x * x;
};
cube = function(x) {
  return square(x) * x;
};

Funkcje z nieokreśloną liczbą parametrów

Czasami zdarza się tak, że funkcja przyjmuje jeden parametr, a następne mogą być dowolne. Tutaj CoffeeScript wprowadza coś, co nazwane jest splats i prezentuje się tak:

gold = silver = rest = "unknown"
awardMedals = (first, second, others...) ->
	gold   = first
	silver = second
	rest   = others

Wynikowo dostaniemy jednak:

var awardMedals, contenders, gold, rest, silver;
var __slice = Array.prototype.slice;
gold = silver = rest = "unknown";
awardMedals = function() {
	var first, others, second;
	first = arguments[0], second = arguments[1], others = 3 <= arguments.length ? __slice.call(arguments, 2) : [];
	gold = first;
	silver = second;
	return rest = others;
};

Zauważcie takie rzeczy jak automatyczne pobranie metody slice z prototypu Array czy też zainicjowanie zmiennej others pustą tablicą, kiedy nie zdefiniowano parametrów dodatkowych.

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: Tomasz Kowalczyk, dodany: 01.05.2011 17:07, tagi: jquery, javascript

Podczas tworzenia stron internetowych nawet jako programiści backendu nie uciekniemy od spraw frontendowych, a więc HTMLa, CSSa oraz JavaScriptu. Dlatego w dzisiejszym Linkdumpie po raz kolejny podejmujemy kwestię tego języka skryptowego. Fotografia: Andrew Dupont, CC-BY-SA. Linkdump: Mistrz JavaScriptus. 1. Simple JavaScript Inheritance with Backbone. Wprowadzenie do biblioteki Backbone.JS. 2. Announcing pushJS: Send javascript to any [...]

Autor wpisu: batman, dodany: 29.04.2011 19:01, tagi: javascript, css

Pamiętacie projekt Chromeless? To takie coś, co pozwala przy pomocy HTML, CSS oraz JavaScript stworzyć własną przeglądarkę internetową. Chłopaki z Mozilli nie zapomnieli o tym projekcie i ogłosili właśnie wydanie kolejnej wersji, oznaczonej numerem 0.2.

Zmiany jakie zostały wprowadzone to:

  • aktualizacja silnika renderującego do najnowszej wersji wykorzystywanej w Firefox 4
  • możliwość spakowania aplikacji i środowiska uruchomieniowego Chromeless
  • możliwość tworzenia i manipulowania menu aplikacji
  • usprawnienie mechanizmu zagnieżdżania treści
  • szereg drobnych usprawnień

Dodatkowo zmianie ma ulec proces wydawania kolejnych wersji tak, aby pojawiały się one częściej. Czy czeka nas wysyp przeglądarek tworzonych przez społeczność?

Strona projektu – http://mozillalabs.com/chromeless

Autor wpisu: Kamil, dodany: 28.04.2011 16:54, tagi: javascript

W niniejszym wpisie chciałbym poruszyć bardzo prosty i rzadko spotykany problem – możliwość podłączenia kilku kont Google Analytics do jednej strony WWW. Domyślnie Google Analytics generuje kod śledzenia dla jednej witryny (i/lub jej subdomen), tutaj natomiast podłączymy statystyki dla kilka kont bez współdzielenia danych z poziomu panelu GA. Problem co prawda jest banalny, jednak poruszam [...]

Autor wpisu: singles, dodany: 20.04.2011 12:15, tagi: javascript, php

Krótko. Jetbrains zrobiło świąteczną niespodziankę i oferuje kilka swoich produktów po naprawdę dobrych cenach – spójrzcie tylko. Obniżka tyczy się licencji prywatnych. Jest to taki typ licencji, na który nie dostaniecie faktury, i który jest przypisany do Was. Ale można ją instalować na dowolnej liczbie maszyn (byle w jednym momencie chodziła tylko jedna kopia) i używać do projektów komercyjnych. Dla potwierdzenia odpowiedź, jaką dostałem na swoje pytanie, kiedy kupowałem swoją licencję:

I work in a company, and using company’s notebook to develop. Can I use personal license on that machine, and when I change company use it there? From what I’ve read, license is ‘attached’ to me, not to machine, so theoretically it’s possible, but I ask for confirmation.

I odpowiedź:

Yes, you can install the software on as many machines as you like but you can use it only on one of them concurrently. Furthermore no company funds may be involved in the purchase at any time.

Jeśli czekaliście na okazję, aby tanio kupić PHPStorm (albo inny produkt z listy) – ta okazja właśnie nadeszła.

Nie, nie mam umowy z JetBrains. Po prostu uważam, że PHPStorm to najlepsze IDE do PHP jakie miałem w rękach ;)

Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.