|
|
|
| У меня 2 вопроса, когда стоит начинать учить и как можно его выучить? Если можно, то дайте мне ссылки на статьи.. | |
|
|
|
|
|
|
|
для: krollik
(21.01.2006 в 15:12)
| | Думаю, что учить что-либо стоит только тогда, когда есть задача, которую нужно решить при помощи этого "что-либо".
Теоретически, если скучно - тоже можно взяться... Но, как правило - эффективность низка. | |
|
|
|
|
|
|
|
для: Shorr Kan
(21.01.2006 в 15:26)
| | Хех, тогда по твоей систему учиться надо только когда у тя есть заказ? А кто мне заказ даст, если я ничего не умею? | |
|
|
|
|
|
|
|
для: krollik
(21.01.2006 в 15:32)
| | Если человек ничего не умеет, то откуда возникает вопрос об ООП ?.. | |
|
|
|
|
|
|
|
для: Shorr Kan
(21.01.2006 в 16:12)
| | это я образно сказал... | |
|
|
|
|
|
|
|
для: krollik
(21.01.2006 в 15:32)
| | >Хех, тогда по твоей систему учиться надо только когда у тя
>есть заказ? А кто мне заказ даст, если я ничего не умею?
Вовсе нет, Shorr Kan говорит об задаче, т.е. просто читать книги не достаточно для упешного усвоения технологии - её нужно применять. Это как с языками, учить их можно хоть вечно и ни выучить ничего, если не говорить на них. Вы можете разрабатывать мини-игру, что угодно - лишь бы это позволило применить ООП на практике. Иначе появится реальная опасность применять ООП там, где не нужно применять и не применять там, где нужно. | |
|
|
|
|
автор: Дембель (21.01.2006 в 16:29) |
|
|
для: krollik
(21.01.2006 в 15:12)
| | Если видишь себя профессионалом , то ест-но ООП изучать рано или поздно нужно будет. | |
|
|
|
|
|
|
|
для: krollik
(21.01.2006 в 15:12)
| | ставлю вопрос по другому: каким образом лучше учить ООП? (типо по чём) | |
|
|
|
|
|
|
|
для: krollik
(21.01.2006 в 17:11)
| | Лучше всего начните с Явы.
http://java.sun.com/
Установите BlueJ и работайте себе спокойно.
http://www.bluej.org/download/download.html
Идеальный язык для обучения ООП.
Начните с примитивных программ, использующих всего один класс, потом постепенно переходите к наследственности, взаимосвязи между несколькими классами, итд.
Когда поймете что к чему, можно эксперементировать с PHP. | |
|
|
| |
|
|
|
|
для: krollik
(21.01.2006 в 15:12)
| | Кстати насчет ООП. Вот прикольный сценарий с ООП:
<?php
/**
*
* ANTISCRIPTING CLASS
* Class for paranoiac image/code creation
*
* This class is free software; you can redistribute it,
* modify it, use it for personal and commercial purposes.
*
* This class is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* NO HELP and SUPPORT available. All questions sent by email will
* be ignored.
*
* Author : Zygimantas Berziunas. <zygimantas@fatelords.com>
* Website : http://www.fatelords.com/
* Version : 1.0
*/
/*
Requirements : PHP+GD(PNG,TTF)
Usage : <img src="antiscripting.class.php" alt="" />
*/
class antiscripting
{
var $width = 85; // image height
var $height = 40; // image width
var $transparent = 1; // transparency
var $interlace = false;
var $msg = 'NO BOTS!'; // text to display
var $font = 'verdana.ttf'; // full path to your font
var $size = 14; // font size
var $rotation = 10; // font rotation.
var $pad_x = 5; // padding x
var $pad_y = 35; // padding y
var $fg_r = 0; // text color RGB - red
var $fg_g = 0; // text color RGB - green
var $fg_b = 0; // text color RGB - blue
var $bg_r = 255; // background color RGB - red
var $bg_g = 255; // background color RGB - green
var $bg_b = 255; // background color RGB - blue
function drawImage()
{
$image = '';
$image = ImageCreate($this->width+($this->pad_x*2),$this->height+($this->pad_y*2));
// Allocate background color
$bg = ImageColorAllocate($image, $this->bg_r, $this->bg_g, $this->bg_b);
// Allocate text color
$fg = ImageColorAllocate($image, $this->fg_r, $this->fg_g, $this->fg_b);
if ($this->transparent)
ImageColorTransparent($image, $bg);
ImageInterlace($image, $this->interlace);
ImageTTFText($image, $this->size, $this->rotation, $this->pad_x, $this->pad_y, $fg, $this->font, $this->msg);
// Image distortion
// Alocate distortion color
$dc = ImageColorAllocate($image, rand(0,255), rand(0,255), rand(0,255));
// Draw eclipse
ImageArc($image, rand(0, $this->width ), rand(0, $this->height ), rand($this->width / 2, $this->width) ,rand($this->height / 2, $this->height), 0,360, $dc);
// Alocate distortion color
$dc = ImageColorAllocate($image, rand(0,255), rand(0,255), rand(0,255));
// Draw rectangle
ImageRectangle($image, rand(0, $this->width/2 ), rand(0, $this->height/2 ), rand($this->width / 2, $this->width) ,rand($this->height / 2, $this->height), $dc);
// Draw dots at random position
$dots = $this->width * $this->height / 10;
for($i=0;$i<$dots;$i++)
{
// Alocate dot color
$dc = ImageColorAllocate($image, rand(0,255), rand(0,255), rand(0,255));
// Draw dot
ImageSetPixel($image, rand(0,$this->width), rand(0,$this->height), $dc);
}
// Create image
ImagePNG($image);
}
}
$this = new antiscripting;
$ttl = 30; // expires in 30 seconds
$now = mktime (date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"));
$expires = mktime (date("H"),date("i"),date("s") + $ttl ,date("m"),date("d"),date("Y"));
$expires_gmt = gmdate('D, d M Y H:i:s', $expires).' GMT';
$last_modified_gmt = gmdate('D, d M Y H:i:s', $now).' GMT';
header('Content-type:image/png');
header('Expires: '.$expires_gmt);
header('last-modified: '.$last_modified_gmt);
$this->drawImage();
?>
|
| |
|
|
|
|