Сегодня 20 июля, воскресенье ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7281
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
coding4.net
coding4.net
Голосов: 1
Адрес блога: http://www.coding4.net/
Добавлен: 2012-06-11 20:16:46
 

Вопросы на собеседовании по TSQL (про JOIN-ы)

2012-09-28 21:16:00 (читать в оригинале)


ms sql server

Это задание было на собеседовании у одного из моих знакомых. На листочке написано содержимое двух таблиц (Т1 и Т2) и несколько запросов. Нужно написать (тоже на бумажке), что вернут эти запросы.
Таблицы:

 T1:
 Id    Value

 1     STR11
 2     STR12
 3     STR13

 T2:
 Id    Value

 1     STR21
 3     STR23
 4     STR24

Запросы:

1. SELECT * FROM [T1] LEFT JOIN [T2] ON T1.Id = T2.Id

2. SELECT * FROM [T1] RIGHT JOIN [T2] ON T1.Id = T2.Id

3. SELECT * FROM [T1] INNER JOIN [T2] ON T1.Id = T2.Id

4. SELECT * FROM [T1] FULL JOIN [T2] ON T1.Id = T2.Id

5. SELECT * FROM [T1] LEFT JOIN [T2] ON T1.Id = T2.Id AND T2.Id > 1

6. SELECT * FROM [T1] LEFT JOIN [T2] ON T1.Id = T2.Id WHERE T2.Id > 1

7. SELECT * FROM [T1] WHERE T1.Id IN (SELECT Id FROM T2)

8. SELECT * FROM [T1] WHERE T1.Id = (SELECT Id FROM T2)

А теперь запросы с ответами (тем, что вернул SQL Server, проверялось в Management Studio):

1. SELECT * FROM [T1] LEFT JOIN [T2] ON T1.Id = T2.Id

    Id    Value    Id     Value

    1     STR11    1     STR21

    2     STR12    NULL    NULL

    3     STR13    3     STR23

2. SELECT * FROM [T1] RIGHT JOIN [T2] ON T1.Id = T2.Id

    Id     Value    Id    Value

    1     STR11    1     STR21

    3     STR13    3     STR23

    NULL    NULL     4     STR24

3. SELECT * FROM [T1] INNER JOIN [T2] ON T1.Id = T2.Id

    Id    Value    Id    Value

    1     STR11    1     STR21

    3     STR13    3     STR23

4. SELECT * FROM [T1] FULL JOIN [T2] ON T1.Id = T2.Id

    Id     Value    Id     Value

    1     STR11    1     STR21

    2     STR12    NULL    NULL

    3     STR13    3     STR23

    NULL    NULL     4     STR24

5. SELECT * FROM [T1] LEFT JOIN [T2] ON T1.Id = T2.Id AND T2.Id > 1

    1    STR11    NULL    NULL

    2    STR12    NULL    NULL

    3    STR13    3     STR23

6. SELECT * FROM [T1] LEFT JOIN [T2] ON T1.Id = T2.Id WHERE T2.Id > 1

    Id    Value    Id    Value

    3     STR13    3     STR23

7. SELECT * FROM [T1] WHERE T1.Id IN (SELECT Id FROM T2)

    1    STR11

    3    STR13

8. SELECT * FROM [T1] WHERE T1.Id = (SELECT Id FROM T2)

Msg 512, Level 16, State 1, Line 23 Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.



Microsoft перечислила преимущества Windows 8 для предпринимателей

2012-09-28 00:21:00 (читать в оригинале)


бизнес и windows 8

Недавно, в ходе конференции TechEd, прославленная компания Microsoft осветила основные плюсы новой операционной системы, которые могут быть полезны для бизнеса. В качестве преимуществ Windows 8 названы усовершенствованные характеристики ее быстродействия, улучшенная совместимость нужных для работы приложений и обновленные бизнес-функции. Вдобавок Microsoft продемонстрировала обновления для некоторых решений Microsoft Desktop Optimization Pack (MDOP). Компании получат возможность расширить набор доступных действий и удобство более безопасного использования системы Windows.

Антуан Лебленд, занимающий в Windows должность вице-президента отдела веб-сервисов, рассказал о практической готовности системы для применения ее в бизнес-среде. Windows 8 будет способна стать инструментом для ИТ-специалистов, служащих компаний, разработчиков, поскольку предоставит пользователям обширные инновационные возможности благодаря обновленной продуктивности, мобильности и безопасности. Обновления к некоторым продуктам MDOP в нынешнее время уже можно скачивать. Они обеспечивают компаниям возможности для управления приложениями, данными и настройками OC Windows. Среди обновленных версий - пакеты MBAM 2.0 и UE-V. С новой версией UE-V пользователь сможет всячески менять внешний вид рабочего стола, сохраняя привычную для себя среду работы, не изменяя никак нужные приложения или настройки системы. Система с новым продуктом настраивается автоматически, а также способна поддерживать дополнительные параметры: панель стартового меню и задач, папки; самостоятельно синхронизирует и настраивает параметры IE 8, 9 и 10.

MBAM 2.0 предоставляет компаниям новые, упрощенные методы защиты персональных данных при помощи решений BitLocker и BitLocker To Go. Новое решение на порядок снижает внушительную сложность процессов мониторинга. Но важнейшим аргументом в его пользу становится уменьшение объема затрат, необходимых для управления шифрованной средой. Таких результатов удалось достичь благодаря интеграции продукта с уже созданными системами управления. В итоге обновленная система способна помочь снизить издержки на свое использование в корпоративной среде.



Что такое прототипы (prototypes) в JavaScript-е ?

2012-09-23 01:51:00 (читать в оригинале)


JavaScript

Что такое прототипы в JavaScript ? Прототипы это объекты от которых другие объекты наследуют свойства. Любые объекты могут быть прототипами. Все объекты имеют прототипы по умолчанию. Так как прототипы сами по себе объекты, то каждый из прототипов имеет прототип тоже. За исключением прототипа по умолчанию, находящегося на вершине любой цепочки прототипов. Давайте вернемся немного назад. Что тfкое объект в JavaScript ? Объект в JavaScript это любая не отсортированная коллекция пар ключ-значение. Примитивные типы, такие как undefined, null, boolean, number или string не являются объектами. Мы говорили что все объекты имеют прототипы, но если мы напишем ({}).prototype мы получим undefined. Наибольшим источником путаницы о прототипах является свойство prototype. Ссылка на настоящий прототип объекта находится во внутреннем свойстве [[Prototype]]. ECMA 5 вводит стандартный стандартный доступ через Object.getPrototypeOf(object) который сейчас уже реализован в Firefox, Safari, Chrome и IE9. Также большинство браузеров (кроме IE) поддерживают не стандартный доступ через свойство __proto__. Поэтому нас постигнет неудача, если мы спросим конструктор объекта о его свойстве prototype.

var a = {};

//Fails in Opera or IE<=8
Object.getPrototypeOf(a); //[object Object]

//Fails in IE
a.__proto__; //[object Object]

//all browsers 
//(but only if constructor.prototype has not been replaced and fails with Object.create)
a.constructor.prototype; //[object Object]


Это все хорошо, но почему тогда false.__proto__ возвращает значение, хотя false это примитив ? Когда у примитива запрашивается свойство prototype, то примитив приводится к объекту.

//(works in IE<=8 too, due to double-negative)
false.__proto__ === Boolean(false).__proto__; //true


Если нам захочется использовать прототипы для наследования, то что мы должны сделать ? Изредка складывается ощущение, что множество прототипов относится только к одной сущности и только к ней одной. Тогда можно было бы просто добавить значение свойства прямо к сущности. Например, у нас есть объект и мы хотим добавить ему функционал объекта Array, тогда это бы выглядело так:

//fails in IE<=8
var a = {};

a.__proto__ = Array.prototype;

a.length; //0


Но реальную силу прототипов мы увидим, когда несколько экземпляров объекта разделяют один прототип. Свойства объекта прототипа, определенные однажды в нем будут унаследованы всеми объектами - потомками. Это соображение важно для производительности и поддержания. Тогда что происходит в констркторе ? Конструктор предполагает кросс-браузерный механизм присваивания прототипа объекту во время его создания. Но тогда что значит constructor.prototype ? Дело в том что JavaScript не делает различия между конструкторами и другими функциями. Так что каждая функция получает свойство prototype. Отсюда следует, что все что не является функцией, не имеет такого свойства.


//function will never be a constructor but it has a prototype property anyway
Math.max.prototype; //[object Object]

//function intended to be a constructor has a prototype too
var A = function(name) {
	this.name = name;
}
A.prototype; //[object Object]

//Math is not a function so no prototype property
Math.prototype; //null


Теперь можно сформулировать определение: в свойстве функции prototype находится объект, который будет присвоен как прототип для всех экземпляров объектов созданных, когда функция используется в качестве конструктора. Здесь важно понимать, что свойство функции prototype ничего не имеет общего с ее настоящим (актуальным) прототипом.


//(example fails in IE)
var A = function(name) {

	this.name = name;
}

A.prototype == A.__proto__; //false

A.__proto__ == Function.prototype; //true - A's prototype is set to its constructor's prototype property



Возможно вы видели подобное уже тысячи раз, но посмотрите еще раз, теперь с другой перспективы.


//Constructor. <em>this</em> is returned as new object and its internal [[prototype]] 
//property will be set to the constructor's default prototype property
var Circle = function(radius) {
    this.radius = radius;
    //next line is implicit, added for illustration only
    //this.__proto__ = Circle.prototype;
}

//augment Circle's default prototype property thereby augmenting the prototype of each generated instance
Circle.prototype.area = function() {
   return Math.PI*this.radius*this.radius;
}

//create two instances of a circle and make each leverage the common prototype
var a = new Circle(3), b = new Circle(4);
a.area().toFixed(2); //28.27
b.area().toFixed(2); //50.27


Это все хорошо. Но если мы изменим прототип конструктора, то все существующие экземпляры объекта получат доступ к новой версии правильно ? Нет, не совсем. Если я модифицирую свойство prototype уже существующего объекта, то так и случится, потому что a.__proto__ было определено при создании указывающим на A.prototype.

var A = function(name) 
{
    this.name = name;
}

var a = new A('alpha');
a.name; //'alpha'

A.prototype.x = 23;

a.x; //23


Но, если я заменю свойство prototype на новый объект, то a.__proto__ будет все еще указывать на оригинальный объект.

var A = function(name) {
    this.name = name;
}

var a = new A('alpha');
a.name; //'alpha'

A.prototype = {x:23};

a.x; //null


Так на что тогда похож прототип по умолчанию ? Это объект с одним свойством - конструктором.


var A = function() {};
A.prototype.constructor == A; //true

var a = new A();
a.constructor == A; //true (a's constructor property inherited from it's prototype)


Что делает выражение instanceof с прототипом ? Оно дает ответ true, если проверяемый объект входит в цепочку наследования от свойства prototype проверяемой функции, или false в другом случае. Дальше идет пример того, как замена прототипа на горячую, приводит к возвращению false выражением instanceof/

var A = function() {}

var a = new A();
a.__proto__ == A.prototype; //true - so instanceof A will return true
a instanceof A; //true;

//mess around with a's prototype
a.__proto__ = Function.prototype;

//a's prototype no longer in same prototype chain as A's prototype property
a instanceof A; //false


Так что еще могут прототипы ? Ранее я говорил, что каждый конструктор имеет свойство prototype, которое используется для присвоения прототипа, каждому создаваемому им объекту. Это работает с конструкторами таких нативных объектов как Function and String. Это дает возможность, расширяя, но не заменяя свойство prototype функции конструктора менять прототип каждого из таких объектов, добавляя нужный функционал.

String.prototype.times = function(count) {
    return count < 1 ? '' : new Array(count + 1).join(this);
}

"hello!".times(3); //"hello!hello!hello!";
"please...".times(6); //"please...please...please...please...please...please..."


Механизм наследования прототипов внутренний и не явный. Когда у объекта a запрашивается для расчета свойство (функция) foo, то JavaScript идет по цепочке прототипов ( начиная с самомго объекта a) и проверяет каждую ссылку в цепочке прототипов на существование свойства foo. И если свойство находится, то оно возвращается, если нет, но возвращается undefined.

Материал взят отсюда



Вопросы на собеседовании по JavaScript, Client-side

2012-09-22 23:42:00 (читать в оригинале)


JavaScript

1. Write a javascript function getObject(id) compatible with every browser.

function getObject(the_id)
{
  if (typeof the_id != 'string')
  {
    return the_id;
  }
  if (typeof document.getElementById != 'undefined') {
    return document.getElementById(the_id);
  } else if (typeof document.all != 'undefined') {
    return document.all[the_id];
  } else if (typeof document.layers != 'undefined') {
    return document.layers[the_id];
  } else {
    return null;
  }
}

2. What is a prototype in javascript?

В общих чертах prototype - это свойство позволяющее добавлять уже существующим объектам свойства, также используется для эмуляции наследования классов в JavaScript. Подробный ответ написан здесь . Еще как вариант, можно упомянуть о Prototype.js. Это популярная библиотека добавляющая удобные ООП возможности в программы на JavaScript-е.

3. Describe the differences between IE and W3C event models

4. Write JavaScript code that implements the following C++ concepts as close as possible:

4.1. Instance methods

4.2. Class methods

4.3. Inheritance

4.4. Base constructor call

4.5. Method overloads

4.6. Private properties and methods

4.7. Static properties and methods

4.8. Privileged methods

5. You have a ready HTML page on a server. You can only add new files or change section of this page. Show what is needed to be changed in order to display a small image after each hyperlink on the page in question.

6. What is the conceptual difference between
and ?

7. What is cross-domain vulnerability ? How it can be prevented ?

8. How to avoid loading the page on link click? Can you come up with more than one way to do it?

9. Write a function that generates functions.

10. Assume func1 and func2 are already defined. In a page like this:


<body onload=”func1()”>
… content …
</body>
<script>func2()</script>
Which function will run first? Why?


11. What is JavaScript closure? Write minimal code to demonstrate its effect.

12. What !DOCTYPE do you usually use? Why? What effect it has on the browser?

13. In most general case, is JavaScript single-threaded or multi-threaded?

14. You want to play some music on a web page. List as many solutions as you can how to achieve this.

15. How would you convert existing HTML files to XHTML?

16. Are there any problems with PNG files in Internet Explorer 6? If yes, how to solve them? What about IE7?

17. What do you know about memory leaks in JavaScript? Write sample code to demonstrate the problem and some code to demonstrate a solution.

По мере сил и времени буду добавлять ответы. Ответы не окончательные и обсуждаются. Жду интересного обсуждения в комментариях.



Типичные ошибки на собеседовании

2012-09-22 05:16:00 (читать в оригинале)


ошибки на собеседовании

Вы когда-нибудь задумывались над тем, почему поиск работы превращается в рекордную стометровку для одних и в утомительный безнадежно длинный марафон для других? Hаверняка среди ваших родственников или знакомых есть и те и другие. И если карьерные успехи можно легко объяснить наличием выгодных знакомств, «крутых родственников» или просто везением, то безрезультатные попытки устроиться на работу удручают и вызывают глубокое недоумение. Казалось бы, всем человек хорош — и образование высшее, и опыт работы есть, и после рассылки резюме звонят из компаний, приглашают на собеседование... Только вот после собеседований на работу не берут...

Так в чем же причина очередного отказа? Какие типичные ошибки допускают соискатели на собеседовании? Попытаюсь ответить на этот вопрос, основываясь на собственном опыте рекрутера.

Многие компании охотно пользуются услугами кадровых агентств, доверяя им отбор наиболее подходящих кандидатов на вакантную должность. Поэтому помните — именно от собеседования в кадровом агентстве зависит, попадете ли вы на собеседование к работодателю и станут ли сотрудники агентства рассматривать вашу кандидатуру на другие вакантные должности или ваше резюме осядет балластом в банке данных агентства с жирной пометкой «минус». Вот и попробуем посчитать возможные «минусы», поскольку свои «плюсы» знают все.

Первое и самое банальное — внешний вид человека, приходящего на собеседование. К сожалению, частенько в агентство «забегают» в поисках работы женщины с нагруженными сумками, пакетами, коробками. Милые хранительницы домашнего очага, не стоит совмещать поход по магазинам с собеседованием, лучше «магазинные дела» сделать в другое время, чтобы не портить впечатление о себе. То же касается сильной половины человечества, которая почему-то пытается совместить визит в кадровое агентство с посещением автосервиса или мойки автомобилей. Абсолютно недопустимо появляться на собеседовании в спортивном костюме, майке и шортах, с авоськами. Слова «я делаю ремонт» и т.п. звучат малоубедительно.

Hекоторые предпочитают приходить на собеседование в сопровождении родственников, и тут, уверяю вас, дело доходит просто до анекдотов.

Hапример, активная жена приводит на собеседование недотепу мужа. Она сразу перехватывает инициативу разговора и на вопросы консультанта агентства отвечает сама, не давая мужу и рта раскрыть. Создается впечатление, что он немой. Через две минуты уже все наслышаны о бестолковости и никчемности ее спутника жизни.

После подобного визита сотрудники агентства дружно вспоминают арию князя Игоря «О дайте, дайте мне свободу...» и жалеют бедолагу мужа, но взять на себя ответственность за представление работодателю вялого и безынициативного сотрудника кадровое агентство не готово. Вот и «зависает» резюме в базе данных с короткой пометкой «на собеседование пришел с женой».

Подобную антирекламу делают своим женам и заботливые мужья. Ситуация повторяется с тем же раскладом. Характеризуя свою жену как существо абсолютно домашнее, наивное и неприспособленное к суровым жизненным реалиям, супруг тем не менее не забывает назвать интересующий его оклад, уточнить возраст будущего начальника и особо отмечает, что категорически не поощряет переработки. Бывает, что лишь выставив заботливого супруга за дверь, консультант агентства получает возможность пообщаться с женщиной и выяснить, чего же хочет она сама, что знает и умеет.

Выпускники вузов — это особая категория соискателей, они часто приходят на собеседование в сопровождении мам, пап и даже бабушек. Психологически это оправдано, поскольку для родителей первое рабочее место ребенка — то же самое, что «первый раз в первый класс». Однако не стоит забывать, что за годы учебы в вузе ваш ребенок приобрел огромное количество знаний, так не мешайте своему чаду проявить себя на собеседовании. Учитывая, что многие компании готовы взять к себе выпускников вузов без опыта работы, у активных, самостоятельных, инициативных ребят есть реальный шанс сделать карьеру.

Как часто, мотивируя свой отказ от той или иной кандидатуры, руководители произносят фразу: «Хороший специалист, английский прекрасно знает, но совсем ребенок...» Поэтому, чтобы ваши дети не производили на окружающих впечатление «маменькиных», лучше, пока идет собеседование, погулять на свежем воздухе и дать своему «единственному и неповторимому молодому специалисту» возможность самостоятельно подняться на первую ступеньку карьерной лестницы.

Если вы испытываете определенные опасения перед поездкой в кадровое агентство, постарайтесь получить предварительную информацию по телефону (есть ли у агентства лицензия, на каких условиях агентство работает с соискателями и др.). Тогда сомнения ваши рассеятся и не придется вести за собой «группу моральной поддержки». Отправляясь на собеседование, лучше забыть детский стишок «Мы с Тамарой ходим парой» и довериться своим собственным знаниям и интуиции.

Безусловно, к собеседованию надо подготовиться заранее, желательно продумать возможные вопросы и ваши ответы на них, составить резюме. Кстати, ваша задача — получить на собеседовании как можно больше информации о вакансии и о компании. Очень может быть, что порядки, установленные в компании, например штрафные санкции за опоздание, лимитированные перекуры или что-то другое, вас абсолютно не устроят...

Главное, чтобы все, что вы говорите, звучало корректно. Представьте себя на месте консультанта агентства, который слышит следующий монолог: «Hазвание последней компании я точно не помню, да я их столько поменял за последний год... Зарплата? Да, получал, но сколько — помню неотчетливо...» Стоит ли в этом случае обращаться в кадровое агентство или все-таки сначала память подлечить?

Вы должны быть готовы к вопросу о причине увольнения с предыдущего места работы. Очень важна мотивация вашего ухода... Hе стесняйтесь говорить о том, что на прежнем месте работы вас что-то не устраивало. Ведь вас не приговорили всю жизнь работать в одной и той же компании! Однако критика хороша в меру. Иногда, отвечая на этот вопрос, соискатели подвергают резкой критике свои прежние компании и их руководство. Всякое бывает, но если после работы в 3-4 компаниях у человека остаются о них только негативные воспоминания, это настораживает.

Представьте себе ситуацию: на собеседование приходит женщина-фармацевт, которая работает в престижной аптеке, уровень зарплаты ее вполне устраивает. Однако из ее рассказа следует, что в аптеке существуют определенные правила, буквально выводящие ее из себя. Hапример: клиентам надо вежливо улыбаться, следить за витриной — расставлять лекарства аккуратно... а еще... нельзя всем вместе попить чаю, только по очереди... В общем, руководство ненормальное, думает только о доходах и клиентах.

Вот ужас! Как человеку не повезло с работой! Hо все мы иногда заходим в аптеки и, как это ни странно, хотим, чтобы нам улыбались, да и работодателю вряд ли нужен сотрудник, принимающий «озверин»...

А вот другая ошибка, допущенная на собеседовании. Симпатичная девушка, претендующая на вакансию референта-переводчика, прекрасно держится на собеседовании и, практически получив предложение о работе, вдруг говорит: «А нельзя ли рабочий день заканчивать чуть-чуть раньше — иначе мне будет трудно успевать на «Любовь и тайны Сансет- Бич».

Результат такого заявления, я думаю, вам ясен: на работу принята другая кандидатка, а девушку мы больше не тревожим — пусть спокойно смотрит телевизор...

Кстати, если вы успешно прошли собеседование в кадровом агентстве и оно предложило вашу кандидатуру работодателю — будьте внимательны! От вашего поведения на встрече с работодателем во многом зависит не только возможное трудоустройство на данную вакансию, но и дальнейшее сотрудничество с агентством. Hаше агентство (многие агентства) практикует присутствие своего консультанта на собеседовании в компании. И здесь вам приходится держать «двойной экзамен» — работодатель оценивает вас как возможного сотрудника, а консультант — как потенциального кандидата на подобные вакансии в других компаниях.

Поэтому, собираясь на собеседование, задумайтесь, а что будет, если вы, например: Опоздаете на встречу с работодателем на 15 мин? Получив предложение от агентства о новой вакансии, снова опоздаете на встречу с работодателем? Или вообще не приедете на встречу с работодателем, о которой вас заранее предупредили сотрудники кадрового агентства? Забудете вымыть голову, надеть носки... в общем, привести себя в порядок? Придете со стойким запахом алкоголя после ночной вечеринки? Список можно продолжать до бесконечности... Так вот — ничего не будет! И прежде всего не будет больше предложений о работе, в поисках которой вы и обратились в кадровое агентство, потому что любое агентство дорожит своей репутацией... Hе допускайте нелепых ошибок, потому что, как это ни банально звучит, успешное завершение процесса трудоустройства зависит именно от вас.

Материал взят с сайта rabotka.ru .



Страницы: ... 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 ... 

 


Самый-самый блог
Блогер Рыбалка
Рыбалка
по среднему баллу (5.00) в категории «Спорт»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.