Перейти к публикации
  • Сейчас на странице   Всего пользователей: 0   (0 пользователей, 0 гостей)

Hed-kun

Программирование, т. 6

Рекомендованные сообщения

вроде понял. всем спасибо


потому что дота командная игра, и каким бы ты класным игроком не был, среди 4 уебков ты становишся 5м.
RTZ Cycle

 

uMaM2Uh.jpg

 

Поделиться сообщением


Ссылка на сообщение

затем же что и во всех других языках?

 

наследовать интерфейс == иметь какое-то конкретное свойство

реализовывать интерфейс


Колы я выросту - то хочу буты такым як я

5c8bbc85b99e.gif

 

годные смайлы

Поделиться сообщением


Ссылка на сообщение

мне сложно со всей этой терминологией по-русски, я так и не вспомнил слова на имплемент

Поделиться сообщением


Ссылка на сообщение
(изменено)

Соре, если я слишком часто спрашиваю, но блять

интерефейсы IEnumerable И IEnumerator.

Со вторым все понятно.

Но первый что возвращает?

    public IEnumerator GetEnumerator()
                                       
    { 
      return (IEnumerator)this; //Что значит this тут?
    }  

Он возвращает this, приведя его к типу(?) IEnumerator.

Что это за тип такой? Ссылка на что то в моем экземпляре? На интерфейс IEnumerator? По которому  foreach проходит по коллекции?


Изменено пользователем mixogen

потому что дота командная игра, и каким бы ты класным игроком не был, среди 4 уебков ты становишся 5м.
RTZ Cycle

 

uMaM2Uh.jpg

 

Поделиться сообщением


Ссылка на сообщение

Итерфейсы:
Игра, куча разных объектов, бочки, двери персонажи - у всех разные статы но есть есть хп.
Аое абилка чтоб бить всех, просто берет все массивом и проверяет на IDamagable и потом IDealDamage();

В итоге код 6 строк на все.

Поделиться сообщением


Ссылка на сообщение
(изменено)

Скажу еще проще, т.к. долго не мог понять нах этот интерфейс нужен в джаве - интерфейс гарантирует (описывает) поведение класса, который реализует данный интерфейс.

 

Например, машина обязана уметь ездить. Используя интерфейс мы гарантируем, что все машины (и потомки) будут обязаны реализовать данный метод. И если кто-то кроме тебя еще пишет код - он не сможет создать машину, которая не сможет ездить. Как-то так.


Изменено пользователем ^p1x

Поделиться сообщением


Ссылка на сообщение

 


вообще не понимаю зачем при автоматизации иметь дело с базой

для автоматизации вебсервисов и проверок в БД банка? :hmm: 

:buba:

ни мало ни много, а много и мало

Поделиться сообщением


Ссылка на сообщение
(изменено)

Соре, если я слишком часто спрашиваю, но блять

интерефейсы IEnumerable И IEnumerator.

Со вторым все понятно.

Но первый что возвращает?

    public IEnumerator GetEnumerator()
                                       
    { 
      return (IEnumerator)this; //Что значит this тут?
    }  

Он возвращает this, приведя его к типу(?) IEnumerator.

Что это за тип такой? Ссылка на что то в моем экземпляре? На интерфейс IEnumerator? По которому  foreach проходит по коллекции?

Энумератор это интерфейс который имеет методы для итерации тоесть это и есть твой итератор

Энумерабл это интефейс для объектов которые содержат энумератор

 

первый возвращает твою инстанцию приводя её к типу энумератор, но это не обязательно один и тот же класс

 

если у тебя класс содежит список List<int> list;

ты можешь сделать public IEnumerator GetEnumerator() { return list.GetEnumerator(); }

только следи за разницей между IEnumerator vs IEnumerator<T>


Изменено пользователем TheDeadSkin

Поделиться сообщением


Ссылка на сообщение
Ключевое слово interface используется для создания полностью абстрактных классов.

 

 

это шутка такая чтоли?

 

я запрещаю миксогену читать эту статью изучая сшарп, во-первых от неё попахивает, во-вторых там куча хуйни которая не нужна в шарпе, напрмиер коллбеки т.к. в шарпе есть делегаты

Поделиться сообщением


Ссылка на сообщение

Вообще мне показалось что ит аудит и консалтинг довольно интересная тема, я так понял что прям пиздец каким спецом в знании языков программирования не надо быть, но в то же время общен понимание ит сферы требуется, и с людьми всяко поинтереснее оьщаться и пиздеть чем проги хуярить 24/7.

Посмотрим, надеюсь возьмут, ну и да все же биг4 в резюме эт пиздец какой плюс, а есть ли на форуме те кто работают в биг4 или в топ ит компаниях, типо касперского/мелкософт/гугол??

как связаны биг4 и IT?

Это же совсем другая сфера


я знаю точно что все телки которые красивые и которые любят ебаться, разбираются в часах

Но у меня нету часов, и хуевая ауди поэтому приходится дома дрочить

Поделиться сообщением


Ссылка на сообщение

Привет ребят, какие сейчас актуальные технологии в вебе и в связке с asp.net mvc? Думал углубленно изучить jquery, но подкрадывается ощущение что я в прошлом веке застрял.

Поделиться сообщением


Ссылка на сообщение

Что значит "актуальные технологии в вебе"?

 


Не проигрываю доту с 2013го - dotabuff

Поделиться сообщением


Ссылка на сообщение

Привет ребят, какие сейчас актуальные технологии в вебе и в связке с asp.net mvc? Думал углубленно изучить jquery, но подкрадывается ощущение что я в прошлом веке застрял.

Angular 2 и React. Jquery никогда не будет лишним.

eGokku понравилось это

Поделиться сообщением


Ссылка на сообщение

Мб не корректно вопрос поставил, но есть же фреймворки как AngularJS. Или прояснили бы за шаблон MVC сказали что его никто уже не юзает и все пишут с использованием knockout.

Также интересны фреймворки по типу bootstrap.

Поделиться сообщением


Ссылка на сообщение
(изменено)

вроде как раз таки нокаут никто не юзает

есть полно фреймворков, но кто ими пользуется - большой вопрос

если все-таки интересны альтернативы тому, что тебе написали выше, то посмотри http://aurelia.io/


Изменено пользователем Milky_Way

я знаю точно что все телки которые красивые и которые любят ебаться, разбираются в часах

Но у меня нету часов, и хуевая ауди поэтому приходится дома дрочить

Поделиться сообщением


Ссылка на сообщение

ох уж этот веб и выяснение что уже никто не юзает и что в моде.

Поделиться сообщением


Ссылка на сообщение
(изменено)

вроде как раз таки нокаут никто не юзает

есть полно фреймворков, но кто ими пользуется - большой вопрос

если все-таки интересны альтернативы тому, что тебе написали выше, то посмотри http://aurelia.io/

Да не, альтернативы не особо нужны. Я просто отстал в развитии, и думал мб стоит обновить знания, что-то было на слуху, но не знал, насколько актуально. Экспериментировать с новыми популярными фреймворками особого желания нет.

В итоге продолжу изучать jquery и потом переключусь на angularJS. Спасибо за советы.

 

ох уж этот веб и выяснение что уже никто не юзает и что в моде.

новые модные технологии только в вебе? и где ты тут увидел выяснения что в моде. Или если ты будешь писать декстопные приложения то только на windows forms?


Изменено пользователем eGokku

Поделиться сообщением


Ссылка на сообщение
(изменено)

Блять, если тебе лень закрывать каждый раз и копипастить всё это дерьмо, сделай класс ExecuteStrategy или чо-нить в этом роде и в нём метод execute, который инкапсулирует все работы с коннектами и прочим дерьмом (можно в нём же через менеджерКоннекто вбрать коннет и выпилить передачу его как аргумента). Типа такого (можешь в нём прям сделать парочку популярных стратегий, типа обычное выполнение запроса по строке (SIMPLE_QUERY_STRATEGY)):

public abstract class ExecuteStrategy {
    
    public interface SQLFunction<R>{
        R apply(ResultSet resultSet) throws SQLException;
    }

    public static final ExecuteStrategy SIMPLE_QUERY_STRATEGY = new ExecuteStrategy() {
        @Override
        protected PreparedStatement getPreparedStatement(Connection conn, String query) throws SQLException {
            return conn.prepareStatement(query);
        }

        @Override
        protected ResultSet getResultSet(PreparedStatement ps, String query) throws SQLException {
            return ps.executeQuery();
        }
    };
    
    public final <R> R execute(Connection conn, String query, SQLFunction<R> function) throws SQLException{
        PreparedStatement ps = getPreparedStatement(conn, query);
        ResultSet rs = getResultSet(ps, query);
        try {
            return execute(rs, function);
        } catch (SQLException ignored) {

        } finally {
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException ignored) { }
            }
            if (ps != null) {
                try {
                    ps.close();
                } catch (SQLException ignored) { }
            }
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException ignored) { }
            }
        }
        return null;
    }

    protected abstract PreparedStatement getPreparedStatement(Connection conn, String query) throws SQLException;
    protected abstract ResultSet getResultSet(PreparedStatement ps, String query) throws SQLException;
    private <R> R execute(ResultSet rs, SQLFunction<R> function) throws SQLException{
        return function.apply(rs);
    }
}

И вот так им пользуйся:

public class TestExecuteStrategy {

    private class User{
        public User(String name, String password) {
        }
    }

    User test(Connection connection, String query) throws SQLException {
        return new ExecuteStrategy(){
            @Override
            protected PreparedStatement getPreparedStatement(Connection conn, String query) throws SQLException {
                return conn.prepareStatement(query);
            }

            @Override
            protected ResultSet getResultSet(PreparedStatement ps, String query) throws SQLException {
                return ps.executeQuery();
            }
        }.execute(connection, query, resultSet -> new User(resultSet.getString("NAME"), resultSet.getString("PASSWORD"));
    }

    User testSimpleQuery(Connection connection, String query) throws SQLException {
        return ExecuteStrategy.SIMPLE_QUERY_STRATEGY.execute(connection, query, resultSet -> 
                                                             new User(resultSet.getString("NAME"), resultSet.getString("PASSWORD"));
    }
}

Для самого популярного типа запроса просто определи темплейтные классы и пользуйся ими.


Изменено пользователем DIMAN123456789

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...